Domain

將舊域重定向到具有相同 URL 結構的新域

  • February 6, 2018

我正在嘗試將舊 WordPress 域中的 URL 重定向到相同的 URL 結構,但在我的新域中。

例如:

  • oldsite.com/post-name-1將重定向到newsite.com/post-name-1
  • oldsite.com/post-name-2將重定向到newsite.com/post-name-2… 等等。

我嘗試將以下內容添加到.htaccess舊域下的文件中:

RewriteRule ^/(.*)$ https://newsite.com/$1 [R=301,L]

我需要在我的文件中寫入什麼規則.htaccess來實現這一點?

Redirect 301 / https://newsite.com/

請參閱Redirect的文件。Apache 中的所有內容都傾向於使用 mod_rewrite,因為它做了很多事情,但這是簡單Redirect完成工作的那些很好的案例之一。

RewriteRule ^/(.*)$ https://newsite.com/$1 [R=301,L]

由於pattern.htaccess上的斜杠前綴,這永遠不會在每個目錄的文件上下文中工作。在目錄(或)上下文中,目錄前綴(特別是以斜杠結尾)在模式匹配發生之前首先從 URL 路徑中刪除 - 因此匹配的 URL 路徑永遠不會以斜杠開頭。就目前而言,該指令旨在用於伺服器虛擬主機上下文。RewriteRule .htaccess

.htaccess您需要刪除斜杠前綴(或使其可選):

RewriteRule ^(.*)$ https://newsite.com/$1 [R=301,L]

但是,提供oldsite.comnewsite.com目前指向不同的主機,並且 WordPress.htaccess指令已被刪除,您應該按照@AndrewSchulman 的建議oldsite.com實現無條件。Redirect

引用自:https://serverfault.com/questions/895848