【发布时间】:2013-04-07 01:00:36
【问题描述】:
我需要有 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 的虚构标题?
【问题讨论】:
-
如果id在url中,为什么需要cookie?
-
@Dagon 这是因为在 c.com 我们让客户下载一个可执行程序。客户安装并使用该程序后,它会将 a.com 连接回购物车以进行升级。如果不将该 cookie 放到 a.com 上,我就无法知道哪个会员应该获得信用。
-
你可以动态地将id放在下载的文件名中。
-
@Dagon - 这意味着下载的 EXE 需要将附属 ID 存储在里面,比如动态编译 EXE。这在我们的情况下行不通。
-
文件名,不在里面,程序可以检查使用的文件名。只是一个想法,如果它不适合你,那么它就不会。 http 是无状态协议,这里有限制 ;-)
标签: php cookies http-headers apache2 http-redirect