IE 中的 PHP 发起器

PHP Initiator in IE

本文关键字:PHP 中的 IE      更新时间:2023-09-26

我有一个网页,它将加载由PHP处理的外部JavaScript。在Chrome和Firefox中,如果我想通过PHP获取js文件的发起方,我只需要通过超全局变量$_SERVER["HTTP_REFERER"]获取它。但是,如果我在浏览此网页之前访问了另一个网页,这将在IE中不起作用。即使在IE中,如何获取发起方网页?

PHP 没有处理 JavaScript。您的浏览器正在处理 JavaScript。

众所周知,HTTP 标头是不可靠的,每个人都可以将他们的字段更改为请求中的任何内容。您无法通过使用 $_SERVER["HTTP_REFERER"] 或 JavaScript 中的任何内容来解决您的问题。一些浏览器已经关闭了引用者或提供了关闭它的可能性,因为一些附加组件也会删除引用者。

唯一可靠的方法是生成安全令牌,每个 JavaScript 调用仅使用一次。将其保存在会话中,在调用html/php和调用js/php时比较它们。