Nginx 在位置块中“允许 127.0.0.1”允许所有用户进入

Nginx 在位置块中“允许 127.0.0.1”允许所有用户进入

问题

我的 nginx 配置中有以下块。

这个想法是让服务器访问文件,但其他人则不能访问。如果其他人访问它,它应该会抛出 403。如果我注释掉允许行,就会发生这种情况。但是如果我保留它,任何人都可以访问它。

我究竟做错了什么?

location = /update.php {
       allow 127.0.0.1;
       deny all;
       fastcgi_param SCRIPT_FILENAME /srv/www/mysite/public$fastcgi_script_name;
       fastcgi_pass 127.0.0.1:9000;
       include /etc/nginx/fastcgi_params;
   }

答案1

照这样尝试一下。

error_page 403 http://yourdomain.tld/403page.htm;
location /update.php {
  allow <your-server-ip>;
  fastcgi_param SCRIPT_FILENAME /srv/www/mysite/public$fastcgi_script_name;
  fastcgi_pass 127.0.0.1:9000;
  include /etc/nginx/fastcgi_params;
  deny all;
} 

相关内容