リダイレクトした際にパラメータを引き継ぐ方法です。
.htaccessを利用します。今回は、af1.html を af2.html へパラメータを引き継ぎつつリダイレクトします。
以下の記述でパラメータを引き継いでリダイレクト出来ます。
.htaccessを使った、パラメータを引き継ぐリダイレクト
RewriteEngine on
RewriteCond %{REQUEST_URI} ^/af1.html [NC]
RewriteRule (.*)$ https://newdmain.com/af2.html [R=301,QSA,L]
phpでのパラメータを引き継ぐリダイレクト方法
phpの場合は、af1.html へ以下を記載します。記載場所はファイルの一番上になります。
$queryString = $_SERVER['QUERY_STRING'];
if ($queryString) :
$url = 'https://newdmain.com/af2.html?' . $queryString;
else :
$url = 'https://newdmain.com/af2.html';
endif;
header('Location: ' . $url, true, 301);
exit;
リダイレクトしつつ、新しいパラメータを付ける
今回この方法を書いた理由は、アフェリエイト用にURLを作成し、そのURLからコチラ側で自由にリンク先を設定したかったためです。そのためリダイレクト先のURLには、UTMパラメータをつけています。
UTMパラメータに関しては下記に詳しく書いてあります
リダイレクト先のURLに下記のようなパラメータを付けて、リダイレクトをした場合でも「QSA」という記載があるため元のパラメータも「&」で一番最後に自動で付けてくれます。
元のURL
https://olddmain.com/af1.html?af=1234
リダイレクト後のURL
https://newdmain.com/af2.html?utm_source=●●●&utm_mediu=●●●&utm_campaign=●●●
実際にリダイレクトされたURL
https://newdmain.com/af2.html?utm_source=●●●&utm_mediu=●●●&utm_campaign=●●●&af=1234
リダイレクト元についていた「af=1234」というパラメータが一番うしろに付きました。
まとめ
代理店などにに渡して設定してもらうURLは、後で差し替える際に面倒です。リダイレクトを前提に渡してしまえば、後から差替えも簡単です。
ITP対応などで、入稿URLにトラッキング用パラメータを付ける場合があるため今回の方法を覚えておきましょう。クローズドアフェリエイトのレントラックス は入稿用のURLにトラッキング用にパラメータが付与されていました。
リスティングでは入稿用URLがリダイレクトすると、審査が通らない Or 後で審査が落ちる ので注意してください。
コメント