本文摘自PHP中文网,作者(*-*)浩,侵删。

Nginx中自带GeoIP模块可以屏蔽指定IP的请求,只不过默认没有被编译,打开以后我们只要再下载一个IP规则就行,Nginx服务器中配置GeoIP模块来拦截指定国家IP。 ( 推荐学习:nginx使用 )
最近有一个网站项目需求:需要屏蔽国内的方问请求。花时间研究了一下这方面的资料。目前找到的最佳方法就是使用 Nginx 的 GeoIP 模块来实现地区的识别。然后配置相关国家的 ISO 名称,禁止访问即可。记录一下相关过程。
编译 GeoIP 组件
maxmind 提供的免费版数据库已经可以满足需求,在使用数据库前,需要先编译 GeoIP 组件:
1 2 3 4 |
|
下载 IP 库
从 maxmind 下载 IP 数据包并解压。 这个是国家的ip数据包:
1 2 |
|
这个是城市的ip数据包:
1 2 |
|
执行完上面的命令后,会得到 GeoIP.dat 和 GeoLiteCity.dat 文件。将这两个文件复制到 Nginx 的 conf 目录。
以上就是nginx的GeoIP有什么用的详细内容,更多文章请关注木庄网络博客!
相关阅读 >>
更多相关阅读请进入《nginx》频道 >>