【发布时间】:2011-07-08 14:28:44
【问题描述】:
如果用户访问此网址,我会尝试这样做:
它会将他重定向到
或者,如果他要去 tihs 网址:
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..
关于如何解决这个问题和/或改进我的规则有什么想法吗?
感谢和抱歉英语(如果你能编辑这个问题,这样语法会更正确,更容易理解,谢谢)。
【问题讨论】:
-
除了docroot中的.htaccess之外,minisite目录下还有.htaccess吗?
-
另外,如果你在替换中设置查询字符串变量(即你有一个问号),你只需要 [QSA] 标志。
标签: regex .htaccess mod-rewrite apache2