[英]GET Request Origin
我正在构建一个游戏跟踪系统,以查看我的游戏在哪里玩以及玩了多少次,因为这些游戏托管在许多不同的网站上。
游戏开始时,它将GET请求发送到我服务器上的PHP脚本。
我正在尝试找出正在玩游戏的URL。
我尝试了很多事情,但是似乎只能获得托管PHP脚本的地址,这并不是完全有用的。
我尝试了这个:
$calling_url = mysql_real_escape_string($_SERVER['HTTP_REFERER']);
但是每次使用不同的浏览器时,它似乎都是空白。
因此,关于如何基于GET请求找到游戏所在位置的想法?
您将需要构建一个查询字符串。 您可以通过发送类似“ http://www.domain.com/welcome.php?referalname=site”的内容来完成此操作
稍后通过执行以下操作显示:
You came from <?php echo $_GET["referalname"]; ?>.
如果游戏使用服务器资源(例如,使用<mx:HTTPService
发送GET请求,则也许可以在服务器上使用gethostbyaddr()函数来查找主机名:
$hostname = gethostbyaddr($_SERVER['REMOTE_ADDR']);
但是,如果请求是来自玩游戏的用户,则不确定。
大多数浏览器都会发送HTTP_REFERER。 但是,如果您的用户位于防火墙之后,则很可能是代理,他们可以在请求到达您之前删除标头。 最后,由于您确实在各种网站上嵌入了自己的代码,所以为什么不简单地获取引荐来源网址并将其发送到服务器,如下所示:
<script type="text/javascript" src="http://myserver.com/game.js?ref=$ref"></script>
其中$ ref是实际的引荐来源网址。 与不太可靠的http Referrer标头相比,这对您来说并不容易。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.