我正在创建一个生成JavaScript代码的PHP文件。
如果网站转到我的代码:
<script src="http://myserver.com/myJS.php"></script>
我的问题: 在PHP中是否有办法找出指向我脚本的网站的IP (而不是本网站访问者的IP)???
谢谢!
答案 0 :(得分:0)
您可以尝试查看REFERER
http标头,该标头应包含网站的网址,但无法保证它会为您提供正确的值。
// First get the referrer
$referer = $_SERVER['HTTP_REFERER'];
// Parse the referer url
$parts = parse_url($referer);
// Then do a NS lookup to get the IP
$ip = gethostbyname($parts['host']);
请确保您了解REFERER
标头可以伪造的事实。并且NS查找并不总是快速 - 或正确。
答案 1 :(得分:0)
您需要的是:
$referer = $_SERVER['HTTP_REFERER']
然后做:
$parse = parse_url($referer);
$host = $parse['host'];
获取IP:
$ip = gethostbyname($host);
将用户代理引用到当前页面的页面地址(如果有)。这是由用户代理设置的。并非所有用户代理都会设置此功能,有些用户可以将HTTP_REFERER修改为功能。简而言之,它无法真正被信任。 SOURCE