使用Nginx后IIS获取客户端真实IP

windwos2008系统 使用web IIS7 默认情况下只能部署1个HTTPS的站点,但是实际情况下一个https 站点并不能满足实际需求。 可以在windows 服务器中安装nginx,然后代理后端IIS ,但是这样会有一个问题,就是IIS日志获取到的ip是 127.0.0.1 不是真实的用户ip

windwos2008系统 使用web IIS7 默认情况下只能部署1个HTTPS的站点,但是实际情况下一个https 站点并不能满足实际需求。

可以在windows 服务器中安装nginx,然后代理后端IIS ,但是这样会有一个问题,就是IIS日志获取到的ip是 127.0.0.1 不是真实的用户ip .


解决方案:

IIS 7服务器必须安装F5XForwardedFor模块,才可以从服务器记录的访问日志中获取客户端IP地址。

1、根据服务器操作系统版本,将x86\Release或x64\Release目录下的F5XFFHttpModule.dll和F5XFFHttpModule.ini文件拷贝到某个自定义目录(例如C:\x_forwarded_for\x86或C:\x_forwarded_for\x64)

如果x86\Release或x64\Release目录下没有F5XFFHttpModule.dll和F5XFFHttpModule.ini
模块需要您手动下载  F5XForwardedFor模块 。


2、在IIS选项中,双击打开模块

打开模块配置

3、单击配置本机模块

配置本机模块


4、在配置本机模块对话框,单击注册,服务器操作系统版本注册相关的DLL文件

  • 32为操作系统注册x_forwarded_for_x86模块
    • 名称:输入x_forwarded_for_x86。
    • 路径:填写F5XFFHttpModule.dll的完整路径,例如C:\x_forwarded_for\x86\F5XFFHttpModule.dll
    • 注册模块

    • 64为操作系统注册x_forwarded_for_x64模块

      • 名称:输入x_forwarded_for_x64。
      • 路径:填写F5XFFHttpModule.dll的完整路径,例如C:\x_forwarded_for\x64\F5XFFHttpModule.dll。
      • 注册本机模块

5、在配置本机模块对话框,选中新注册的模块(x_forwarded_for_x86、x_forwarded_for_x64)并单击确定

启用模块


6、在ISAPI 和CGI限制页面,添加已注册的DLL,并将限制设置为允许

启用功能


7、重启IIS服务器,等待配置生效


  • 发表于 2020-11-23 23:34
  • 阅读 ( 2874 )
  • 分类:服务器

0 条评论

请先 登录 后评论
东北大表哥
东北大表哥

自由职业

178 篇文章

作家榜 »

  1. 东北大表哥 178 文章
  2. 小鹄 1 文章
  3. 阿天 0 文章
  4. 新百胜在线 0 文章
  5. 刘明明 0 文章
  6. 个的德3 0 文章
  7. 铂天先生 0 文章
  8. 王达 0 文章