2009-09-14 96 views
1

我移动博客从一台服务器到另一个添加子域名,因此该路径将改变/动力匹配 -htaccess的国防部重写W¯¯

http://www.example.com/queen/index.php/2009/winners-and-losers/ 

到 -

http://blogs.example.com/queen/2009/winners-and-losers/ 

什么的mod_rewrite规则我会添加到.htaccess下/queen/www.example.com到301重定向到新的http://blogs.example.com/queen/

什么改变是'www'>'blogs'和'index.php/'正在消失。

谢谢!

回答

1

试试这个规则:

RewriteRule ^index\.php/(.*) http://blogs.example.com/queen/$1 [L,R=301] 

如果该文件夹也通过其他的主机名访问,但只应适用规则在www.example.com

RewriteCond %{HTTP_HOST} =www.example.com 
RewriteRule ^index\.php/(.*) http://blogs.example.com/queen/$1 [L,R=301] 
+0

我得到了404当我尝试。用看起来像这 - RewriteBase/ 的RewriteCond%{} REQUEST_FILENAME老的.htaccess!-f 的RewriteCond%{} REQUEST_FILENAME!-d 重写规则^([^ /] +/[^ /] + /?) $ index.php/$ 1 [NC,L] 我重命名了它所在的子文件夹,并且创建了一个除了现在具有的.htaccess文件之外为空的新/ queen /文件夹 - RewriteBase/ RewriteRule^index \ .php /(.*)http://blogs.theroanoker.com/queen/$1 [L,R = 301] 但是我的网址生成了404。我做错了什么? – Marty 2009-09-14 20:58:32

+0

@Marty:如果您不需要更改基本URL路径,请勿使用“RewriteBase”。 – Gumbo 2009-09-14 21:13:03