2010-02-03 123 views
0

我想,如果用户要从这个网址可以这样做:重定向用户使用mod_rewrite目录 - 简单的问题

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的...这是我到目前为止已经wrriten:

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

它的工作,但问题是,如果我要去一个不存在的页面,它会做500而不是404 ..

关于如何解决这个问题和/或改进我的规则的任何想法?

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

+0

除docroot中的.htaccess之外,您是否在minisite目录中有.htaccess? – outis 2010-02-03 21:42:41

+0

另外,如果您在替换中设置查询字符串变量(即,您有问号),则只需要[QSA]标志。 – outis 2010-02-03 21:44:09

回答

0

你所需要的很简单,只要

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

这将映射任何东西(除了形成以及微型网站的URL)来的微型站点目录。