最近网站浏览量增大,服务器问题频出,在查看日志的时候发现用户访问ip都是cf的泛播ip,于是通过修改Nginx的配置文件将cf发送给我们的标头显示出来,在此记录一下。

在此警示各位网络并非法外之地,一举一行都有据可查,请文明上网。

下图是我修改Nginx配置文件之前log日志记录的ip,这都是cf的泛播ip。

修改Nginx配置文件:

宝塔的nginx配置文件存放位置与一般nginx不一样。

宝塔存放nginx配置文件位置:/www/server/nginx/conf/nginx.conf

一般nginx的配置文件位置:/usr/local/nginx/conf/nginx.conf

打开Nginx之后在

http

{

}

部分添加如下代码:

1
2
3
4
5
6
7
map $HTTP_CF_CONNECTING_IP  $clientRealIp {
"" $remote_addr;
~^(?P<firstAddr>[0-9.]+),?.*$ $firstAddr;
}
log_format main '$clientRealIp [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'$http_user_agent $remote_addr $request_time

添加完如下图所示:

保存并退出。

之后打开网站设置,在配置文件最底下log后面加入 main(注意前面有空格),点击保存。

之后返回日志就可以查看到真实访问者ip了。