其中一个搜索引擎已经抓住了我的测试网站:new.mydomain.co.uk
现在我已经完成了测试,我想将这些网址重定向到使用相同扩展名的主网站。
示例:
new.mysite.co.uk/thispage/
需要指向www.mysite.co.uk/thispage
,依此类推。我已经搜索并找到了一个解决方案(下面复制了),但我会实现我的目标,但这个原因只是将“测试网站”指向www.mysite.co.uk
而不是扩展。
这是我用过的代码:
RewriteCond %{HTTP_HOST} ^new\.mysite\.co.uk$ [NC]
RewriteRule ^(.*) http://www.mysite.co.uk/$1 [L,R=301]
我花了几个小时试图弄清楚我做错了什么,但是我已经用尽了自己的研究,我需要请专家帮我解决这个问题。
非常感谢
答案 0 :(得分:1)
我建议而不是在.htaccess内部,在适当的Apache虚拟主机配置中执行此操作。像这样的东西会将new.mysite上的所有流量重定向到www.mysite并附加正确的路径:
<VirtualHost *:80>
ServerName new.mysite.co.uk
Redirect permanent / http://www.mysite.co.uk/
</VirtualHost>
如果您只是包含“重定向”行,那么如果您不想直接编辑apache文件,这也适用于您的.htaccess文件。 (除非您的新。和www。共享相同的物理文件夹)
更复杂的重写规则可能类似于您的建议:
RewriteCond %{HTTP_HOST} ^new\.mysite\.co\.uk
RewriteRule ^(.*)$ http://www.mysite.co.uk/$1 [R=301,L]
在.uk
之前使用反斜杠聚苯乙烯。这个问题更适合serverfault.com