Nginx блокирует определенный каталог для одной страны
Я использую 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