1

例えば:

http://www.old-domain.com/news.php?NewsID=30888&test=3

に:

http://www.new-domain.com/?NewsID=30888&test=3

ページ「news.php」ではなく、新しいドメインのパラメーターのみを取得する必要があります

4

1 に答える 1

2

これは、リダイレクトまたは書き換えを使用するとデフォルトで発生します。たとえば、old-domain.comドメインのドキュメント ルートにある htaccess ファイルでは、次のようになります。

Redirect 301 /news.php http://www.new-domain.com/

に行ったクエリ文字列 (例: ?NewsID=30888&test=3) は、/news.php自動的に に追加されhttp://www.new-domain.com/ます。

mod_rewrite と同じ:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?old-domain.com$ [NC]
RewriteRule ^news.php$ http://www.new-domain.com/ [L,R=301]

編集:貴重な情報:

私の場合、news.php 以外のどのページでも発生する可能性があるため、news.php に基づいていません。任意のページからの新しいドメインのパラメーターが必要なだけです。例:old-domain.com/pagename.php?var1=data1&var2=data2new-domain.com/?var1=data1&var2=data2

次に、それは次のようになります。

RedirectMatch 301 ^/(.*) http://www.new-domain.com/

また

RewriteEngine On
RewriteCond %{HTTP_HOST} ^(www\.)?old-domain.com$ [NC]
RewriteRule ^ http://www.new-domain.com/ [L,R=301]

私の答えで言ったように、実際のパスは無関係です。クエリ文字列は自動的に追加されるため、特別なことをする必要はありません

于 2012-08-14T20:26:10.530 に答える