Advertisement

nginx代理web 后端无法获取用户真实IP(解决方法)

阅读量:

部署Nginx之后,在后端使用Request.UserHostAddress获取到的始终是Nginx服务器返回的IP地址,而非用户的实际IP。

解决方法:

nginx:

根据当前请求路径{
设置Host头字段,
获取远程访问来源的IP地址,
获取来自客户端的前向代理信息,
指定返回的真实客户机地址,
关闭重定向,
将访问流量转发到自己应用的目标网站(替换为自己的目标站点)
}

亿家修后台迁移部署出现移动端用户登录的问题,通过以上配置解决。

IIS:

部署Url ReWriter服务,并在服务器中新建配置参数REMOTE_ADDR(通过该系统组件提供的Request.UserHostAddress获取客户端实际访问的IP地址,并将此值替换成真实的客户端IP地址)

新增URL字段重写规则,请注意以下事项:建议将REMOTE_ADDR字段替换成{HTTP_X_Forwarded_For}字段,并以HTTP开头使用下划线符号作为字段标识符

配置完成后web.config的system.webServer节点下信息如下:

复制代码

全部评论 (0)

还没有任何评论哟~