我最近开始在 PHP 中编写大量支持 AJAX 的脚本,事实是,AJAX 调用访问的文件也可以直接使用,如何禁用它?

最佳答案

您无法可靠地防止这种情况发生。关键真的不是将直接访问此文件的人视为安全问题 - 为这做可能的计划,您将处于更安全的地方。

有些人可能会推荐看起来像这样(或类似)的代码:

if(!empty($_SERVER['HTTP_X_REQUESTED_WITH'])
     && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest') {
    // more code here
}

然而,事实是 HTTP header 很容易被欺骗,并且不是保护代码的一种手段。不久前我在一个繁忙的网站上进行测试时,我注意到这些 header 实际上并不那么可靠。

关于php - AJAX 只能访问,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1393904/

10-14 13:08
查看更多