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

Другие вопросы по тегам