我想拒绝访问一个特定的文件夹(和其中的所有文件),但我想从我的服务器内的PHP文件可以访问它(及其文件)。 可能吗? 这是我正在尝试没有suvccess:
location /folder/ { allow 1.2.3.4; # my server IP deny all; return 404; }
您在nginxconfiguration中设置的ACL是用于由nginx提供服务的http请求。 如果PHP想访问其他文件,则不受nginxconfiguration的限制。 但是,PHP可以被自己的configuration所约束。
既然你想把一些安全性转移到PHP,我想要注意的是PHP可以访问configuration文件等。 所以你应该确保你不允许这样的代码给攻击者提供任何有用的信息:
http://my.server.acme.org/images.php?file=../../../etc/passwd
在现实中,这对我来说是有效的:
location ~ folder/ { allow 1.2.3.4; #server IP deny all; }