繁体   English   中英

获取PHP中的推荐站点IP地址

[英]Get referring site IP address in PHP

我想为我的SaaS产品实现推荐计划。

合作伙伴将在其网站上提供一个链接,该链接会将其用户引导至我的注册表单:

domain.com/referral/201030

“ 201030”是合作伙伴站点的成员ID。

我想确保页面请求来自我的合作伙伴网站,

我知道我可以检查$_SERVER['HTTP_REFERER']但这并不安全。

有什么方法可以检查使用PHP将用户引到我的网页的网站的IP地址吗?

什么时候需要高安全性?

例如,对于一个API,您要跟踪传入的流量,并确保只有经过身份验证的客户端才能访问该API。 这需要更高的安全标准以及公共密钥和秘密的交换。

什么时候不?

推荐程序不需要这种安全性。

您拥有的流量越多,对您越有利。 您不在乎潜在客户来自何处。 当我通过Messenger发送我的合作伙伴程序链接给某人时,甚至没有HTTP_REFERER。

可能吗

没有服务器端的交互,混淆和动态链接, 很难 确保用户来自哪里。

任何机会?

使用静态链接的唯一方法是$_SERVER['HTTP_REFERER'] 您现在可以对答案进行投票表决,但不会改变事实,即没有简单的,非动态的链接(如问题所示)的事实。

将引荐来源转化为IP

要将HTTP_REFERER转换为IP:

$urlParts = parse_url($_SERVER['HTTP_REFERER']);
$ip       = gethostbyname($urlParts['host']);

请记住,这在任何方面都不可靠也不安全。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM