【发布时间】:2010-09-15 00:34:40
【问题描述】:
确定当前页面发送或调用(通过 AJAX)哪个页面的最可靠和最安全的方法是什么。由于(缺乏)可靠性,我不想使用$_SERVER['HTTP_REFERER'],并且我需要调用的页面仅来自源自我网站的请求。
编辑:我希望验证执行一系列操作的脚本是否正在从我网站上的页面调用。
【问题讨论】:
-
为什么说$_SERVER['HTTP_REFERER']不靠谱?
-
PHP 实现是可靠的。问题是从来没有浏览器发送这个,如果你愿意,你甚至可以修改它。因此,从客户端的角度来看是正确的并不可靠。
-
一种可能的方法是在页面的一个字段中放置一个唯一键(例如 GUID),然后在下一个请求中将其发回。
-
找出服务器的IP地址并使用
$_SERVER[REMOTE_ADDR]。
标签: php http-referer