我正在创建一个生成JavaScript代码的PHP文件。
如果网站泄露我的代码:
<script src="http://myserver.com/myJS.php"></script>
我的问题:PHP中有没有一种方法可以找到指向我的脚本的WEBSITE的IP(而不是该网站访问者的IP)???
谢谢!
您需要的是:
$referer = $_SERVER['HTTP_REFERER']
然后执行:
$parse = parse_url($referer);
$host = $parse['host'];
获取IP:
$ip = gethostbyname($host);
将用户代理引用到当前页面的页面的地址(如果有)。这是由用户代理设置的。并非所有的用户代理都会设置此项,有些用户代理提供了修改HTTP_REFERER的功能。简言之,它不能真正被信任。来源
您可以尝试查看REFERER
http标头,它应该包含网站的URL,但不能保证它会给您正确的值。
// 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查找并不总是快速或正确的。
我可以依靠Referer HTTP头吗?
https://en.wikipedia.org/wiki/HTTP_referer