我正在使用 Nginx 和 GeoIP 来屏蔽某些国家/地区(针对整个网站)。
是否可以只屏蔽一个特定目录?
这样:
www.domain.com/
每个人都可以访问
www.domain.com/ES
仅有的西班牙 IP 可以访问,其他人则不能访问。www.domain.com
/其他
每个人可以访问除中国以外的其他国家。
(仅以国家为例)
谢谢。
是的,我知道 GeoIP 并不总是准确的,但它还是很有帮助的。
答案1
使用ngx_http_access_module
和ngx_http_geo_module
。
location /ES {
# Enter the Allowed IP blocks
allow x.x.x.x;
deny all;
}
location /OTHER {
# Enter the Denied IP blocks
deny x.x.x.x.;
allow all;
}
来源:
http://nginx.org/en/docs/http/ngx_http_access_module.html http://nginx.org/en/docs/http/ngx_http_geo_module.html