网站搭建好之后,很多时候会使用CDN。但这样也造成一个问题,就是无法获取用户真实访问IP,导致在运维和安全上造成问题。后台Nginx日志里面只会出现CDN IP,这里我们只需要简单添加代码便可获取用户真实访问IP,这个对使用宝塔等面板搭建的网站套用Cloudflare很实用!

比如网站搭建好以后一直会有人暴力破解管理员密码,虽然可以在Nginx添加限制IP访问,但是查看日志全是Cloudflare IP,一旦禁止ip,将造成所有用户无法访问。

废话不多说,我们开始操练起来。

如果你使宝塔或者他们的海外版aaPanel,在Nginx管理配置文件中下图位置添加如下代码:

 

  • ##取得用户真实IP
  • set_real_ip_from 0.0.0.0/0;
  • real_ip_header X-Forwarded-For;

 

 

Nginx在CDN Cloudflare环境下获取用户真实IP

打开配置文件在http { 之下添加代码

同理,不论是否使用宝塔搭建都只需要在“../nginx/confNginx/nginx.conf”配置文件中添加即可!

然后重启Nginx服务或重新加载让其生效。测试访问你的网站,回到面板查看网站日志,可以看到访问日志里面将出现你的真实IP。