设想
我正在使用两台运行 Apache 的服务器。 相同的程序.htaccess
在一台服务器上运行,而在另一台服务器上不运行。
代码
AuthUserFile .htpasswd
AuthType Basic
AuthName "Password Required"
Require user jackson
Order Deny,Allow
Deny from All
<FilesMatch "^ads\.txt$">
Allow from all
</FilesMatch>
Satisfy Any
问题
ads.txt
匿名访问者无需登录即可在服务器 A 上看到内容,但是,他们只能401 (unauthorized)
在服务器 B 上看到内容。这可能是什么原因,或者我可以做些什么来进一步排除故障?
额外的
- 如果我切换到
Allow from All
第 6 行,ads.txt 仍然被服务器 B 上的 a 阻止401
。如果我注释掉该FilesMatch
条件,则阻止将被解除。这只会加剧混乱。 - 服务器 B
.htaccess
在父目录中有一个。将其设置为Allow from All
没有任何效果。 - 这两个文件都
664
属于 apache 有权访问的组。
答案1
两台服务器是否运行相同的 Linux 发行版和版本,并且都运行相同版本的 Apache?
尽管文件可能具有相同的权限(664 和相同的所有者/组),但两台服务器上都可以访问完整路径吗?也许其中一个子文件夹的权限太严格。