如果之前已经提出这个问题,我很抱歉。 我有一个文件夹,如:project / version / download.zip 但事情是我有多个项目文件夹和多个版本文件夹 我有几个文件,我不希望任何人访问版本文件夹,但我想允许用户访问download.zip
我的问题是如何阻止访问其他文件但允许用户下载zip? 至于文件只是一个文件类型。
或者我应该将zip文件转移到其他文件夹并将deny从项目文件夹中的所有文件夹中删除?
请建议^^谢谢
答案 0 :(得分:1)
如果您的zip文件所在的文件夹,请尝试添加.htaccess
文件,其中包含以下内容:
Order Allow,Deny
Deny from all
<FilesMatch "\.zip$">
Order Deny,Allow
Allow from all
</FilesMatch>
答案 1 :(得分:0)
假设您的版本文件夹中没有.htaccess文件。如果你启用了mod_rewrite,你应该可以这样做:
首先将.htaccess文件添加到版本文件夹。将以下内容添加到该文件
RewriteCond %{REQUEST_URI} !(download\.zip|grumpycat\.png)$
RewriteRule ^ [F,L]
由于.htaccess文件位于版本文件夹中,因此所有文件名都自动以version/
为前缀。它将阻止访问该文件夹中的所有文件,以及没有.htaccess的子文件夹,但download.zip和grumpycat.png除外。您可以简单地将此文件复制并粘贴到要限制访问的任何子文件夹中。
或者,如果稍微更改代码,则可以在文档根目录中创建.htaccess。你会做这样的事情:
RewriteCond %{REQUEST_URI} ^/(version|version1337|version9001)
RewriteCond %{REQUEST_URI} !(download\.zip|grumpycat\.png)$
RewriteRule ^ [F,L]
现在请求的URL必须以version,version1337或version9001开头,并且不得以其中一个文件名结束以触发禁止的错误。否则将显示该文件。