2011-06-24 75 views
1

WordPress安装有几个站点/域。独立于WordPress安装是服务器上子文件夹中的HTML站点。我只希望其中一个域能够访问此文件夹,其他域不应该能够看到该文件夹​​。我还需要阻止特定的文件,而不是在同一个文件夹中,但一起(全部在public_html中)。WordPress多站点 - 阻止访问服务器上的子文件夹,但只有一个站点

我已经看了看周围,并尝试了一些东西,这里是我的时刻,但它不工作,当我使用这个我得到一个内部服务器错误:

SetEnvIf Referer mydomain\.com localreferer 
<Location /myfolder> 
    Order deny,allow 
    Deny from all 
    Allow from env=localreferer 
</Location> 
<FilesMatch myfile.php> 
    Order deny,allow 
    Deny from all 
    Allow from env=localreferer 
</FilesMatch> 

回答

0

这里是一个解决方案涉及到mod_rewrite(将其放入.htaccess文件到根文件夹中)。除非通过mydomain.com(例如http://mydomain.com/myfolder)请求,否则它将禁止(403代码)访问位于myfolder的任何资源。

RewriteCond %{HTTP_HOST} !=mydomain.com 
RewriteRule ^myfolder(/|/.*)?$ - [NC,F] 

下面的规则将做同样的但/myfile.php文件。

RewriteCond %{HTTP_HOST} !=mydomain.com 
RewriteRule ^myfile\.php$ - [NC,F] 

至于你的原始方法 - 试试这个:<FilesMatch "myfile\.php">FilesMatch使用正则表达式,因此可能需要以这种方式进行声明。

相关问题