使用mod_rewrite将用户重定向到目录 - 简单问题

时间:2010-02-03 21:27:38

标签: regex .htaccess mod-rewrite apache2

如果用户访问此网址,我正在尝试这样做:

http://www.abc.com/

它会将他重定向到

http://www.abc.com/minisite/

或者,如果他要去网址:

http://www.abc.com/dir/something.php

它会将他重定向到:

http://www.abc.com/minisite/dir/something.php

我正在尝试在Mod_Rewrite中执行此操作...这是我到目前为止所做的:

RewriteRule ^$ /minisite/$1 [L,QSA]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /minisite/$1 [L,QSA]

这是有效的,但问题是,如果我要进入一个不存在的页面,它会做500而不是404 ..

有关如何修复和/或改进规则的任何想法?

感谢和抱歉英语(如果你编辑这个问题会很好,所以语法会更正,更容易理解,谢谢)。

1 个答案:

答案 0 :(得分:0)

您需要的就像

一样简单
RewriteCond %{REQUEST_URI} !minisite
RewriteRule (.*) minisite/$1 [L]  

这会将进入的任何内容(格式良好的minisite URL除外)映射到minisite目录。