htaccess URL如果没有/ mantisbt /不工作,请重写到子文件夹

时间:2014-03-18 18:58:18

标签: apache .htaccess mod-rewrite redirect

我正在尝试让htaccess执行以下操作

将来自site.com/的所有请求重定向到subdir' subdir',除非请求uri以/ mantisbt /

开头

我使用了这个答案中的以下代码(https://stackoverflow.com/a/5793784/1839903)并添加了一个条件(第4行),但它没有得到尊重。

RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www.)?site.com$
RewriteCond %{REQUEST_URI} !^/subdir/
RewriteCond %{REQUEST_URI} !^/mantisbt/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /subdir/$1
RewriteCond %{HTTP_HOST} ^(www.)?site.com$
RewriteRule ^(/)?$ subdir/index.php [L]

我想提一下,在subdir / .htaccess中,我需要htpasswd用户,当我去site.com/mantisbt/whatever它要求我提供有效的用户/通行证(不是标准的mantisbt登录,浏览器目录保护访问)。如果我删除所有重写规则和条件,那么site.com/mantisbt/whaterver正在按预期工作,当然,还有site.com/? root / subdir中的文件不提供服务。

我希望我的问题很清楚,如有必要请提供更多信息。

感谢您的帮助,

0 个答案:

没有答案