码迷,mamicode.com
首页 > 其他好文 > 详细

Nginx限制IP访问及获取客户端realip实战

时间:2017-05-27 23:55:54      阅读:1064      评论:0      收藏:0      [点我收藏+]

标签:安装   _for   for   配置   技术   php   管理员   min   过程   

    做网站时经常会用到remote_addrx_forwarded_for这两个头信息来获取客户端的IP,然而当有反向代理或者CDN的情况下,这两个值就不够准确了,需要调整一些配置。Nginx作为web服务器

时需要根据源IP地址(remote_addr)进行某些限制,但是假如前端是负载均衡的话,Nginx获得的地址永远是负载均衡的内网地址,虽然可以通过设置x_forwarded_for获取到真实的源IP地址但

是无法针对这个地址进行一些权限设置,及Nginx获取到的remote_addr是没有多大意义的,可以通过nginx的realip模块,让它使用x_forwarded_for里的值。使用这个模块需要重新编译Nginx,

增加--with-http_realip_module参数

1,编译安装Nginx

   不详述安装过程,编译增加--with-http_realip_module

2,修改配置文件

在http标签添加两行,其中IP地址代表负载均衡器的IP地址

技术分享

3,查看日志

技术分享

remote_addr和http_x_forwared_for一样了

4,设置某个页面的访问权限

  技术分享

其中admincp.php页面为后台管理员页面,只有通过拨号到对应的IP地址那台主机才允许访问

否则跳403错误

技术分享

 

Nginx限制IP访问及获取客户端realip实战

标签:安装   _for   for   配置   技术   php   管理员   min   过程   

原文地址:http://www.cnblogs.com/minseo/p/6914725.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!