2011-12-09 195 views
0

我有一个使用seo网址的modx网站。奇迹般有效。.htaccess忽略目录

现在我想要在现有目录中的现有文件正确显示aswel,但我正在接受默认的modx 404页面。

镆铘,网站本身位于根目录,并使用下面的.htaccess

Options +FollowSymlinks 
RewriteEngine On 
RewriteBase/

RewriteCond %{HTTP_USER_AGENT} ^.*internal\ dummy\ connection.*$ [NC] 
RewriteRule .* - [F,L] 

RewriteCond %{HTTP_HOST} ^foo\.com 
RewriteRule ^(.*)$ http://www.foo.com/$1 [R=permanent,L] 

# Exclude /assets and /manager directories and images from rewrite rules 
RewriteRule ^(manager|assets|update)/*$ - [L] 
RewriteRule \.(jpg|jpeg|png|gif|ico)$ - [L] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA] 

更新目录是我现有的文件驻留www.foo.com/update/index.html

在更新目录中我用下面的:

RewriteEngine Off 

<IfModule mod_security.c> 
# Turn the filtering engine Off 
SecFilterEngine Off 
</IfModule> 

AuthGroupFile /dev/null 
AuthType Basic 
AuthUserFile /home/domains/foo.com/.htpasswd/public_html/update/.htpasswd 
AuthName "login" 
require valid-user 

正如你可以看到这个子目录也被密码保护。但我怀疑这与我的问题有关。事实上,我已经对它进行了修饰......但迄今为止没有成功。

回答

0

我觉得

RewriteRule ^(manager|assets|update)/*$ - [L] 

应该

RewriteRule ^(manager|assets|update)/.*$ - [L] 

或只是

RewriteRule ^(manager|assets|update)/ - [L] 

规则中的*适用于/,所以它匹配“零个或多个斜杠'