javascript - 安全的 ajax 脚本(javascript 请求的 PHP 脚本)

标签 javascript php ajax .htaccess xmlhttprequest

如何使 XMLHttpRequest (ajax) 调用的 php 脚本安全。

我的意思是,不让 PHP 文件通过直接 url 运行,只能通过脚本从我的页面调用(我不想向未登录的用户显示数据库结果,并且调用的 php 脚本文件包含数据库登录和函数).

我研究并发现无法使用:

  • 如果我通过 .htaccess 锁定文件夹或使用 Mod 重写(根本无法正常工作,不推荐)

  • header 重定向不起作用(确切地说我不知道​​将从中调用脚本的 URL 或域) if(@isset($_SERVER['HTTP_REFERER']) && $_SERVER['HTTP_REFERER']=="http://xxxxxxx.com/index.php?")

  • lastone 不工作是包含在 php 脚本中($_SERVER['HTTP_X_REQUESTED_WITH'])返回 NULL:if($_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest') { header('HTTP/1.1 403 禁止访问'); 导出; };

最佳答案

使用随机标记怎么样?参见 best practice to generate random token for forgot password例如。你会想要阅读很多关于 SO 的文章,使用 token 时需要考虑很多。 (尤其是考虑他们的安全性。)

关于javascript - 安全的 ajax 脚本(javascript 请求的 PHP 脚本),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21700054/

相关文章:

javascript - MVC Controller 方法不是从 ajax 调用的

javascript - Facebook 的 "See first"通过 API/插件/技巧订阅?

javascript - 在 Javascript 中使用长字符串文字的最佳方法是什么?

php - 在条件 Mysql 中使用时别名变量不起作用

php - 删除月份的前几天 - PHP Array

javascript - 在 ajax 语句中使用 jQuery 删除表行

返回 AJAX 调用数据的 JavaScript 函数

javascript - Angular - 无法看到 Angular2 如何从服务自动更新数据

php - SWFUpload 选择文件后会发生什么?

php - TCPDF 不能图像,因为它使用了错误的目录路径