【发布时间】:2010-06-03 23:48:22
【问题描述】:
我想用 htaccess mod-rewrite 完成什么:
使用重写规则将所有子域重定向到新域名。
例如
test1.olddomain.com ===> test1.newdomain.com
test2.olddomain.com ===> test2.newdomain.com
test3.olddomain.com ===> test3.newdomain.com
这是我目前所拥有的,当然这是错误的:
Options +FollowSymLinks
RewriteEngine on
RewriteCond %{HTTP_HOST} ^olddomain\.com$ [NC]
RewriteRule ^(.*)$ http://www.newdomain.com/$1 [R=301,L]
RewriteCond %{HTTP_HOST} ^www\.olddomain\.com$ [NC]
RewriteRule ^(.*) http://www.newdomain.com/$1 [R=301,L]
RewriteRule [a-zA-Z]+\.olddomain.com$ http://$1.newdomain.com/ [R=301,L]
由于我还不是正则表达式迷,我需要您的帮助...感谢您在此处提供的任何帮助。我也知道我们可以将前两个条件合二为一。
注意:我不使用 DNS 重定向所有域的原因是很多目录需要特殊的重写规则才能保持在 SEO 上的位置。
【问题讨论】:
标签: regex apache .htaccess mod-rewrite