在我的下载文件夹中的 .htaccess 文件中,只有这个:
<FilesMatch "\.(exe)$">
AuthType Basic
AuthName "Downloads"
AuthUserFile path/to/.htpasswd
Require valid-user
</FilesMatch>
单击下载链接后a href="fileName.exe">FileName</a>
,出现 500 服务器错误。
如果我省略了<FilesMatch>
-part; 保护部分正在工作,我猜,因为我得到了登录框。但是一旦进入保护区,就会出现500服务器错误。
我在这里做错了什么?
我的意图是只保护一个 .exe 文件以防止被任何人下载。
有没有更简单或更正确的方法来做到这一点?
如果你想保护单个文件,为什么要使用 FilesMatch 开始?
当然,在 htaccess 文件中禁止所有目录级指令;您的错误日志会准确告诉您您做错了什么。
只需将您的 httpd.conf 与直线部分一起使用即可。
如果您在询问第一行时没有打错字应该是
<FilesMatch ~ "\.(exe)$">
您可以从http://httpd.apache.org/docs/2.0获得的所有信息