1

3 つのドメインが必要です。

  • a.com - スクリプト (下記) が存在する場所。
  • b.com - 実行したい追跡スクリプトがある
  • c.com - ランディング ページのような最終目的地です

したがって、広告クリエイティブはhttp://a.com/track.php?id=1004&r=c.comにリンクできます。ここで、1004 は私のアフィリエイト ID です。このスクリプトが呼び出されると、次のようなことを行う必要があります。

<?php
setcookie('affid', $_GET['id'],time()+60*60*24*365, '/');
head('X-Something: http://b.com/track?id=' . $_GET['id']);
head('Location: http://' . $_GET['r']);

...ここで、X-Something は、Apache が理解し、ページのリダイレクトを行う前に接続を試みるヘッダーです。

問題は、どの HTTP ヘッダー フィールドでこれが許可されるかさえわかりません。出来ますか?

最終的に、アフィリエイトは次のようなものへの広告クリエイティブ リンクを作成できます。

http://a.com/track.php?id=1004&r=c.com

a.com に Cookie をドロップし、b.com でスクリプトを起動してから、c.com にリダイレクトします。それは可能ですか?もしそうなら、私が作成した X-Something という名前のヘッダーの代わりに、どのヘッダーを使用する必要がありますか?

4

1 に答える 1

2

I don't know that such an HTTP header exists.

Instead, another solution would be to make PHP request the tracking script. This could be done with file_get_contents(). The method will return you whatever that is available at that URL, but in this case you don't need it so its return value can be ignored.

<?php
setcookie('affid', $_GET['id'],time()+60*60*24*365, '/');
file_get_contents('http://b.com/track?id=' . $_GET['id'] );
head('Location: http://' . $_GET['r']);
于 2013-04-15T01:25:11.423 に答える