如何限制共享 nginx 服务器块内的子域的访问?

如何限制共享 nginx 服务器块内的子域的访问?

我有一个服务器块,其中包含一些不同的规则,可以捕获其域和所有子域。我希望beta.mysite.com只对我的 IP 保密。但是,我不想创建第二个服务器块,以避免重复我的规则。我可以创建第二个服务器块并将规则包含在 conf 文件中,但我不想这样做。

有没有办法根据此服务器块中的子域有条件地限制 IP 的访问?

server {
        listen 443 ssl;
        listen [::]:443 ssl;

        ssl_certificate     /etc/nginx/ssl/mysite.com.crt;
        ssl_certificate_key /etc/nginx/ssl/mysite.com.key;

        server_name mysite.com *.mysite.com;

        root /var/www/mysite.com/html;

        location / {
                include php.conf;
                try_files $uri $uri/ /index.php?$uri&$args;
                index index.php index.html;
        }

        location /public {
                autoindex on;
        }

        location /internal_data {
                internal;
        }

        location /library {
                internal;
        }
}

相关内容