寻找一些htaccess重写规则来阻止除服务器本身以外的所有目录访问。这是一个充满图像和flash swf文件的目录。是的我知道不希望直接访问文件自己的目录有点奇怪,但是当在受保护目录之外的其他html中引用时允许用户看到它,但这就是我所追求的。我尝试了几种不同的方法,如下所示:
# send them to index.php
Options +FollowSymlinks
RewriteEngine on
#RewriteRule ^(.*)$ ../User/ [NC]
#RewriteRule ^(.*)$ [R=301,L,NC]
# no one gets in here!
#deny from all
Options All -Indexes
<Limit GET POST PUT>
order deny,allow
deny from all
allow from 192.168.0.0/33
</Limit>
他们似乎都没有真正做我想做的事。其中一些阻止访问所有内容,包括服务器本身。其他将请求重定向到另一个页面,但因为它保持相同的URL,“页面”上的链接被用户重定向到不会工作。
如果可能,我甚至不想做404警告,因为虽然这不允许用户访问目录,但用户仍然知道该目录存在。
答案 0 :(得分:1)
您只需使用此一行规则即可:
RewriteRule ^mydir/ - [L,R=404,NC]
这样/mydir/
下的所有文件都会为访问者生成404错误,但您的服务器仍然可以访问这些文件。