1

まず第一に、私の英語でごめんなさい...私の問題を理解してくれることを願っています:)

私の会社は、当社のウェブサイトへのリンクを含む電子メール キャンペーンを作成しました。この URL には、キャンペーンを追跡するための Google トラッキング コードがあります。

残念ながら、URL が間違っています :

http://www.mysite.fr/category/mypage.html/?utm_source=source&utm_medium=medium&utm_campaign=campaign

ただし、「mypage.html」とトラッキング コードの間にスラッシュがあり、存在しないページを指しています。

新しいメールを全員に送信せずに URL をリダイレクトするこれらのルールを試しましたが、うまくいきません:

RewriteRule ^/category/mypage\.html/\?utm_source\=source\&utm_medium\=medium\&utm_capaign\=campaign$ http://www.mysite.fr/category/mypage.html?utm_source=source&utm_medium=medium&utm_campaign=campaign [R=301,L]

または :

RedirectPermanent /category/mypage.html/ http://www.mysite.fr/category/mypage.html?utm_source=source&utm_medium=medium&utm_campaign=campaign

ルールの書き方がわかりません。誰か助けてくれませんか?

4

1 に答える 1

0

あなたの にはいくつか問題がありますRewriteRule。これを .htaccess ファイルに入れる場合は、正規表現の先頭のスラッシュ (接頭辞) を削除する必要があります。これは、apache が .htaccess ファイルのルールに入れる前に URI からスラッシュを削除するためです。次に、 a の正規表現でクエリ文字列 ( ?から始まるもの) と照合することはできませんRewriteRule

なぜあなたRedirectPermanentが働いていないのか分かりません。省略した場合、クエリ文字列が自動的に追加されるという事実を除けば、それは問題ないように見えます。私はそれがあなたが望むものだと思うので、ターゲットのクエリ文字列を削除してください:

RedirectMatch 301 ^/category/mypage.html/$ http://www.mysite.fr/category/mypage.html
于 2012-07-10T16:47:26.470 に答える