确定引荐站点的IP地址

Jho*_*lla 2 php apache seo

我目前正在开发一个营销模块,用于跟踪为我们网站带来流量的网站.有没有办法使用PHP获取引用网站的域名或IP地址?我相信HTTP_REFERER并不总是出现在$ _SERVER全局上.

提前致谢.

Pek*_*ica 9

HTTP_REFERER标题必须由客户端浏览器发送.你不能依赖它被发送.

未收到的情景包括:

  • 用户手动输入地址
  • 用户在其中一个大型电子邮件客户端中打开一个链接,这些客户经常会模糊REFERER
  • 用户的浏览器配置为阻止引用者标题(罕见)
  • 用户正在切换协议(即http站点上指向https的链接,反之亦然)

在这些情况下,你无能为力.

但是,如果您控制链接站点,则可以在GET参数中将引用者ID添加到链接:

http://example.com/?from=mysite
Run Code Online (Sandbox Code Playgroud)

然后,您可以解析from脚本中的 参数.

将引用者字符串转换为IP通常不是一个好主意,看到尽可能多的IP地址托管数十个或数百个站点.用户来自哪个站点的区别将以这种方式丢失.