我想知道是否有可能看到什么资源正在调用我的网站页面(PHP文件)。
我创建了一个API PHP页面,该页面处理JSON POST数据并将其保存到数据库。
现在,我想知道什么资源正在调用我的PHP页面。
例如,我使用POSTMAN
将数据发布到页面中。
有可能看到邮递员打来的电话吗?
可以通过PHP获得该信息吗?
答案 0 :(得分:0)
您可以了解有关请求的一些信息,例如:
1) IP地址:
// Read the IP from who is really making the request (a user or a proxy)
$ipAddress = $_SERVER['REMOTE_ADDR'];
// Read the IP that the proxy is telling us making the request.
$ipAddress = isset($_SERVER['HTTP_X_FORWARDED_FOR']) ? $_SERVER['HTTP_X_FORWARDED_FOR'] : '';
如果请求的源位于代理后面,则$ _SERVER ['REMOTE_ADDR']将具有代理的IP,因此您可以检查HTTP_X_FORWARDED_FOR标头,但很容易被欺骗,除非您可以控制代理或是受信任的代理。
2)用户代理:
// Using global $_SERVER
$userAgent = $_SERVER['HTTP_USER_AGENT'];
// Using get_browser function you can get an array with the information
$arrayBrowserInfo = get_browser($userAgent, true);
用户代理也很容易被欺骗,因此您不能相信它是正确的。
3)引荐来源:
$referer = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '';
引荐来源标头是可选的,并且没有很多浏览器发送给XHR请求。
如果您要构建API,则可以根据用例要求提供必需的标头或参数,以告诉您有关谁在执行请求的更多信息(Android App,iOS App,网站等)。 ,很容易被欺骗。
因此,我不建议将其用于安全性验证,但是如果您只想知道要记录的调试调用,则可能会有用。