.htaccess 拒绝/允许规则拒绝文件夹,但不直接拒绝文件

.htaccess 拒绝/允许规则拒绝文件夹,但不直接拒绝文件

我们在文件夹中有一个.htaccess文件,配置了deny,allow如下:

Order deny,allow
Deny from all
Allow from <whitelist IP>
Allow from <whitelist IP>
....

此文件中没有其他重写等规则,只有拒绝/允许的内容。

如果你尝试去http://www.xyz.site/protected/(无文件名)来自被拒绝的 IP,您会收到预期的 Forbidden 错误。但是,如果您转到http://www.xyz.site/protected/filename.php- 其中 filename.php 是文件夹内的有效文件,例如登录表单,页面加载 - 但没有图像或 CSS(可能仍然被 .htaccess 拒绝)

为什么这个 .htaccess 设置不能阻止被拒绝的 IP 访问整个文件夹 - 是否有冲突的服务器权限覆盖了它?

答案1

这实际上取决于您的配置。如何调用 php 解释器?您是通过 CGI、FastCGI 使用它,还是使用嵌入式 php 解释器(又名 mod_php)?

答案2

听起来 .htaccess 内容没有被解释,并且访问目录时出现“禁止”结果是因为禁止的 DirectoryListings(不存在的索引文件?)。

相关内容