修改Nginx配置将知道创宇云安全传送的访客真实IP地址标识重命名

通常,我们在使用CDN类架构服务时,为了网站能够获取到网民的IP地址,需要按照类CDN服务提供方提供的特定的header头信息,获取IP地址。如知道创宇云安全《使用知道创宇云安全后如何获取访客真实IP》、《PHP、ASP、ASP.NET、JSP网站使用云安全后,修改代码获取访客真实IP

在使用知道创宇云安全服务时,我们通常使用“HTTP_X_CONNECTING_IP”字段获取IP地址。

但是在某些场景下,如网站的代码中原来的代码可能是“x-client”,涉及修改的代码太多,网站管理员不想一一修改,该怎么办呢?

这里,知道创宇云安全介绍一种通过配置nginx,对知道创宇云安全传递的值进行重命名。

根据网站部署架构,这里分别介绍一下nginx+fastcgi_pass、nginx+proxy_pass两种方式:

nginx+fastcgi:

在相应的cgi设置下面,通常是fastcgi_pass下面,添加一行:

fastcgi_param  x-client  $HTTP_X_CONNECTING_IP;

也就是类似这样:

nginx+proxy_pass:

在相应的server区域添加一行, 添加内容为:

proxy_set_header x-client $http_x_connecting_ip;

也就是类似这样:

做完调整reload一次nginx配置,可以在使用phpinfo的方式测试,如上面的设置后得到的结果:

另,上面的x-client只是一个例子,在实际应用中理论上可以是任意字符串,但如果name中有使用下划线,则会被忽略,如果不想被忽略,配置中需要增加underscores_in_headers on;