PHP:获取用户单击重定向到我的外部站点的链接的服务器的IP地址
为清晰起见,请想象以下场景:PHP:获取用户单击重定向到我的外部站点的链接的服务器的IP地址,php,apache,Php,Apache,为清晰起见,请想象以下场景: 用户位于siteA.com 用户单击指向我的网站的链接: siteB.com 我的站点希望在收到请求时确定siteA.com的IP地址,以便知道为此请求链接到它的服务器的IP 使用PHP和Apache有什么方法可以做到这一点吗?如果没有,有没有办法做到这一点 <?php // Perhaps something like: $linking_server_ip = $_SERVER[LINKING_SERVER_IP]; ?> 编辑: 所以
- 用户位于siteA.com
- 用户单击指向我的网站的链接: siteB.com
- 我的站点希望在收到请求时确定siteA.com的IP地址,以便知道为此请求链接到它的服务器的IP
<?php
// Perhaps something like:
$linking_server_ip = $_SERVER[LINKING_SERVER_IP];
?>
编辑:
所以$\u服务器['HTTP\u REFERER']不可靠,但我想我可以随意使用它(补充/机会主义信息,表明推荐人不是来自预期的端点,如果它不是空的,可能。尽管听起来即使如此,它也不可靠,因为任何插件客户端仍然可能破坏价值,使得合法的推荐似乎来自其他服务器)
我仍然有这个问题:
我需要验证服务器是否引用了我站点上的特定页面(该页面充当该服务器的证书)
例如,他们的页面有一个指向certificate.php?serverid=1234的链接
我想验证他们没有欺骗系统,没有在任何其他服务器上使用此证书(例如,使用siteA的siteC证书,并避免为本应在siteC上完成的服务付费)
即使使用粗糙的解决方案,将siteA的服务器设为http请求我的服务器(siteB)要获得一次性使用令牌以便在certificate.php上进行验证,他们可以在其他站点每次需要验证令牌时使用siteA获取令牌,这样他们就可以欺骗验证并为siteA申请证书。HTTP
Referer
头(是的,这就是它的拼写!)它在PHP脚本中作为$\u服务器['HTTP\u REFERER']
提供
(但请注意,并不能保证所有浏览器都会提供它,而且它可以被欺骗。不要使用它来强制执行任何安全策略。)您的问题完全不同,我将删除我的答案,因为它不再有意义。啊,对不起,我最初认为检查$\u服务器值的简单解决方案可以解决问题。现在我意识到这不起作用,我已经备份到我的实际问题中。也许我应该发布一个新问题?它是b这样完全改变是不公平的。别担心:)但是如果帖子的原意改变了,那么发布一个新的问题是更好的做法,尤其是如果你已经有了答案。