如何跟踪访问者来到我的网站的地方php

时间:2011-01-19 11:44:24

标签: php

我想跟踪用户到达我网站的网站网址 从他来到i.el,Google,GMail,Facebook等等。

我尝试了$_SERVER['HTTP_REFERER'],但是当用户点击任何外部网站上的网站链接时,它不包含任何内容,但是当我访问我的网站页面时,它会保留该值,而这也不受信任

那么,我能从这里做些什么呢?

还有其他方法可以通过PHP跟踪外部URL吗?

有什么想法吗?

编辑:现在,HTTP_REFERER可以从大多数网站获取网址,但如果用户通过Gmail and AOL则无法获取网址。可能是什么原因?

3 个答案:

答案 0 :(得分:2)

HTTP_REFERER是获取有关上一个网站的任何信息的唯一方法。

如果它提供了这些信息,那也是更为明智的,大多数都是默认的。

它是一个标题,由浏览器在您的服务器请求中设置,如果它不存在,那么您永远不会知道用户来自哪里。

如果浏览器正在发送但您仍然无法在服务器上获取任何内容,请检查是否有任何代码干扰$ _SERVER变量。

尝试使用此网址,这是一个google搜索结果,转到仅转储HTTP_REFERER的网页。

如页面所示,如果框中列出(无),那么您的浏览器不会发送HTTP_REFERER,但如果您得到结果,那么问题出现在服务器中。

http://www.google.com/url?sa=t&source=web&cd=1&sqi=2&ved=0CBIQFjAA&url=http%3A%2F%2Fkarmak.org%2F2004%2Freftest%2Ftest&rct=j&q=http_referer%20test&ei=cNQ2TdGYGsmUOp_ExPoD&usg=AFQjCNFVSmYmQBUcL2l3_ZpmZzVWZztjWg&cad=rja

您可以将其与Google加载页面进行比较,以便重定向您:

http://karmak.org/2004/reftest/test

这是他们自己的带有链接的起始页面:

http://karmak.org/2004/reftest/

答案 1 :(得分:0)

您是否在各种浏览器中尝试过它?这取决于浏览器(据我所知)设置HTTP_REFERER,有时隐私设置可以防止这种情况。

答案 2 :(得分:0)

来自谷歌的访问者可以使用谷歌分析进行跟踪,它为您提供之前使用的搜索查询字词。

此解决方案还会跟踪访问者的许多其他内容。我认为它不是基于PHP的,但它是我知道的唯一其他类型的解决方案,如果HTTP_REFERRER对你不够,并且正如你引用google ...