【发布时间】:2020-01-20 10:50:28
【问题描述】:
我试图阻止直接访问某些文件类型并将它们重定向到 PHP 脚本。
示例:用户/浏览器请求
http://example.com/files/example.pdf
我希望它由 download.php 脚本处理。所以基本上最终的 url 应该是
http://example.com/tools/download.php?file=files/example.pdf
我尝试过的:
<FilesMatch "\.(psd|log|sh|pdf|doc)$">
RewriteRule ^/files/(.*)$ /tools/download.php?file=$1 [NC,L]
#Order Allow,Deny - with or without this
#Deny from all - with or without this
</FilesMatch>
和
RewriteRule ^.*\.(pdf|doc|xls|xlsx|docx|zip)$ /tools/download.php?file=$1 [R=301,L]
而且我似乎无法让它工作。有什么想法吗?
【问题讨论】:
-
我认为您走错路了...您应该将文件夹放在 htdocs 之外并使用 php 脚本处理它。更好的方式
-
我希望可以。这很漂亮 - 可以说 - 我支持的定制项目,并且还有指向存储在 db 中的文档中的文件的链接(用户创建的 html 内容)。现在,在我看来,使用 htaccess “拦截”它比通过所有数据库更容易。