我在我的网站root中安装了drupal,下面有一个名为xi-admin的目录,该目录里面有一个.htaccess来做密码保护。问题是,它是否正在将http://www.example.com/xi-admin/重写为index.php ????
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^(xi-admin|xi-admin/.*)$
RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
答案 0 :(得分:0)
尝试更改
RewriteCond %{REQUEST_URI} !^(xi-admin|xi-admin/.*)$
到
RewriteCond %{REQUEST_URI} !^/xi-admin
答案 1 :(得分:0)
在您的配置中,您在一个规则中引用foo
,而另一个规则引用/bar
,其中一个规则永远不会匹配。
选择:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/(xi-admin|xi-admin/.*)$
RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
或者使用相对寻址的另一种替代方法,我建议这样做,因为即使此目录稍后将被移动到目录层次结构中的其他位置,它仍然有效:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !^(xi-admin|xi-admin/.*)$
RewriteCond $1 !=favicon.ico
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]