2014-05-15 70 views
0

如果我有一个Web根与/.htaccess像:htaccess的重定向到子目录,防止孩子目录是在URL调用

<IfModule mod_rewrite.c> 
    RewriteEngine On 
    RewriteCond %{HTTP_HOST} ^.*$ [NC] 
    RewriteRule ^$ public/ [L] 
    RewriteCond %{HTTP_HOST} ^.*$ [NC] 
    RewriteRule ^(.*)$ public/$1 [L] 
</IfModule> 

而且/public/.haccess,如:

<IfModule mod_rewrite.c> 
    RewriteEngine On 
</IfModule> 

一般都要求转发给public/*等等(我可以管理这方面的所有问题)。

我怎样才能阻止用户约为查看/公众:

//example.com/public/
//example.com/public/foo

例如,具有上述结构:

//example.com/public/foo
//example.com/public/index.php
等将加载...

但是我希望这些请求直接到像URL:

//example.com/foo
//example.com/index.php

,即转发到子目录/public,我希望从任何URL中忽略它,理想情况下通过301/302重定向。

如何通过.htaccess来做到这一点?

回答

0

只需限制直接访问,public目录。

您可以尝试以下操作:

/public/.htaccess

deny from all 
+0

对不起,我想你已经错过了我的观点,该文件位于/公众,不就是阻止他们是一起服务?我热衷于通过RewriteRule为他们服务,但阻止/ public URL的可能性。 – user3640248