我们有一个在 Ubuntu 服务器上运行 Nginx 的网站。该网站有一个管理页面,我们希望允许访问指定的 IP 地址。我在 Nginx 配置中使用了以下内容,但它没有阻止。你能帮我解决这个问题吗?谢谢。
网址:www.example.com
管理页面:https://www.example.com/en/admin/login.php
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/html;
# Add index.php to the list if you are using PHP
index index.html index.htm index.nginx-debian.html;
server_name _;
location / {
# First attempt to serve request as file, then
# as directory, then fall back to displaying a 404.
try_files $uri $uri/ =404;
}
location /en/admin/ {
allow 123.123.123.123;
deny all;
}
# Disable directory listing
autoindex off;
}
答案1
尝试按顺序切换拒绝和允许。
location /en/admin/ {
deny all;
allow 123.123.123.123;
}
然后执行 nginx -t 并重新启动或重新加载 nginx。同时将 location /en/admin 放在 location / 之前