@vitaly_il1
DevOps Consulting

Как задать ACL для одного из доменов?

У меня определен сервер для *.example.com.
Мне надо ограничить доступ для name1.example.com - разрешить только с определенного адреса. Как это сделать, не клонируя весь "server" блок? Что-то подобно "location", но по имени сайта, не пути?

server {
        listen 443 ssl http2; 
        server_name *.example.com;
        ...... еще много всего ......
}


UPDATE: Похоже, что нельзя, так как "allow" может быть только в контексте "http, server, location, limit_except". Но может, я чего-то упустил?
nginx.org/en/docs/http/ngx_http_access_module.html
  • Вопрос задан
  • 52 просмотра
Решения вопроса 1
@AUser0
Чем больше знаю, тем лучше понимаю, как мало знаю.
В location пишите где-то так:
set test="";
if ($host = "name1.example.com") set test="1";
if ($remote_addr != "1.2.3.4") set test=$test."2";
if ($test = "12") return 403;
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы