リダイレクトしてもパラメータを引き継ぐ方法

サーバー
スポンサーリンク

リダイレクトした際にパラメータを引き継ぐ方法です。

.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 後で審査が落ちる ので注意してください。

コメント

タイトルとURLをコピーしました