另一个htaccess重定向请求 - 旧域到新域,旧域到新页面

时间:2014-01-23 15:34:45

标签: .htaccess redirect dns

花了一天的时间阅读整个网络上的数百种变体,但仍无法找到适用于此的明确答案。

将旧域上的旧网站结构移动到新域上的新网站结构,以便我寻找最佳,搜索引擎友好的重定向代码:

  1. 将所有old-domain.com和www.old-domain.com流量永久重定向至www.new-domain.com。

  2. 从old-domain.com/old-page.html和www.old-domain.com/old-page.html添加特定重定向到www.new-domain.com/new-page/

  3. 这就是我所拥有的 - 而且它不起作用 - 请有人为我改进/解决这个问题。非常感谢!

    RewriteEngine on 
    RewriteRule ^(.*)$ http://www.new-domain.com/$1 [R=301,L]
    redirect 301 /old-index.html http://www.new-domain.com/
    redirect 301 /old-page-1.html http://www.new-domain.com/new-1/
    redirect 301 /old-page-2.html http://www.new-domain.com/new-2/
    redirect 301 /old-page-3.html http://www.new-domain.com/new-3/
    

1 个答案:

答案 0 :(得分:0)

你应该坚持只使用mod_rewrite或mod_alias而不是混合两者。订购事项

mod_alias中:

Redirect 301 /old-index.html http://www.new-domain.com/
Redirect 301 /old-page-1.html http://www.new-domain.com/new-1/
Redirect 301 /old-page-2.html http://www.new-domain.com/new-2/
Redirect 301 /old-page-3.html http://www.new-domain.com/new-3/
Redirect 301 / http://www.new-domain.com/

mod_rewrite的:

RewriteEngine on 
RewriteRule ^old-index.html$ http://www.new-domain.com/ [R=301,L]
RewriteRule ^old-page-1.html$ http://www.new-domain.com/new-1/ [R=301,L]
RewriteRule ^old-page-2.html$ http://www.new-domain.com/new-2/ [R=301,L]
RewriteRule ^old-page-3.html$ http://www.new-domain.com/new-3/ [R=301,L]
RewriteRule ^(.*)$ http://www.new-domain.com/$1 [R=301,L]