如何从 Apache mod_auth Require valid-user 中排除单个文件?

如何从 Apache mod_auth Require valid-user 中排除单个文件?

我有一个测试站点,它有一个 Require valid-user 指令,使用 Apache 的 mod_auth 来保持其私密性,但我想将单个文件从此要求中免除(即,使您不需要用户名/密码来访问该文件,即使您需要用户名/密码来访问站点的其余部分)。

现在,我有...

AuthUserFile /path/to/htpasswd
AuthType Basic
AuthName "My Private Site"
Require valid-user
<Files filename.txt>
  Allow from All
  Satisfy Any
</Files>

但这似乎并没有起到什么作用(我可以看到文件,但只有在提示输入用户名/密码并单击取消后才能看到)。

我究竟做错了什么?

答案1

我认为这样的事情应该可行:

<FilesMatch "^/path/to/file$"> 
Allow from all 
Satisfy any 
</FilesMatch> 

您也可以尝试使用<location>指令而不是<FilesMatch>指令。

相关内容