2

既存のサイトh*tp://www.oldsite.com/があり、新しいサイトh * tp://www.newsite.co.za/にリダイレクトする必要があります。古いサイトは、新しいサイトのホストアカウントでパーキングドメインとしてすでに設定されています。以下は、newsiteホストのファイル構造です。h * tp://www.newsite.co.za/-/ public_html h * tp://www.oldsite.com/-/public_html/oldsite.com

新しいサイトは古いサイトの完全な再構築であるため、古いサイトのすべてのインデックス付きページを新しいサイトの対応するページにリダイレクトする必要がありました。静的ページをリダイレクトすることができましたが、動的ページで苦労しています。例えば:

h*tp://www.oldsite.com/The_Wine_Shop/Bales_Private_Vintners.aspx?CatID=13&PageID=175&RefPageID=169

h*tp://www.newsite.co.za/buy-wine/buy-wine-online/

上記のフォーマット例に基づいてリダイレクトする必要のあるページがいくつかあります。リダイレクトを行う最も簡単な方法は何ですか。動的ページを含む「The_Wine_Shop」フォルダー内のすべてのファイルをリダイレクトすることを考えていますが、この形式でそれを行う方法がわかりません。

ちなみに、これが私の古いサイトから新しいサイトへのインデックスページリダイレクトのコードです。

Options +FollowSymLinks
RewriteEngine On
RewriteCond  %{HTTP_HOST}  ^oldsite\.com [OR]
RewriteCond %{HTTP_HOST} ^www.oldsite\.com
RewriteRule  ^/?(.*)  http://www\.newsite\.co\.za/$1 [R=permanent,L]
4

1 に答える 1

1

.htaccessに別のルールセットを追加できます。

RewriteCond %{REQUEST_URI} ^/The_Wine_Shop/
RewriteRule ^(.*)$ http://www.newsite.co.za/buy-wine/buy-wine-online/ [R=301,L]

これにより、で始まるすべてのページがリダイレクトされます/The_Wine_Shop/

要求されたURIとクエリ文字列を確認したい場合は、次のようにすることができます。

RewriteCond %{REQUEST_URI} ^/The_Wine_Shop/Bales_Private_Vintners\.aspx$
RewriteCond %{QUERY_STRING} CatID=13
RewriteCond %{QUERY_STRING} PageID=175
RewriteCond %{QUERY_STRING} RefPageID=169
RewriteRule ^(.*)$ http://www.newsite.co.za/buy-wine/buy-wine-online/ [R=301,L]

URLが大文字で書かれているか小文字で書かれているかを気にしない場合は、NCフラグを条件に追加してください。

<link rel="canonical" href="http://new-and-correct-url" />また、新しいサイトにタグを追加する必要があります<head>

relcanonicalの 詳細

于 2011-11-09T20:37:39.320 に答える