php - 允许 JavaScript 请求 PHP 文件,但不能直接从浏览器请求

标签 php javascript ajax

我正在使用 jquery 脚本,通过 ajax 和 PHP 上传文件。它向 upload_a_file.php 发送请求,然后上传文件。

有没有办法可以确保 upload_a_file.php 不会直接加载到浏览器中?

我尝试将 upload_a_file.php 放在 public_html 文件夹上方。但似乎无法让 JavaScript 加载 upload_a_file.php。

这是我在 javascript 中用于请求 upload_a_file.php 的 url 格式:

../upload_a_file.php

是否可以使用 javascript 访问 public_html 之上的文件?

最佳答案

JS 无法访问服务器上您作为用户无法访问的任何内容。如果文件位于站点文档根目录之外,则用户或 JS 无法访问该文件。想象一下,如果 JS 能够神奇地绕过服务器上的访问限制并获取更多内容,那么 Web 将变得多么有趣。 “哇哦,我本来想获取这家银行的账户列表,但它不在文档根目录中。幸好我有 Javascript,它可以做任何事情!”

就像24的每一集一样,“修补子网”可以神奇地绕过任何防火墙并从甚至不在线或(更好)不在线的计算机获取数据通电。令人惊奇的事情,那些子网。

关于php - 允许 JavaScript 请求 PHP 文件,但不能直接从浏览器请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7772591/

相关文章:

php - IMAP 打开流 : Self signed certificate issue

java - Spring启动异步 Controller

javascript - 如何转换 "["15 3","15 6","16 6","19 7"]"到 ["153","156","166"0x1045679 10]

PHP 5.5.16 isset 或 empty 中的非法偏移类型

php - Laravel 5.4 中的自定义助手类

php - 如何将 128 CFB mcrypt 转换为 Ruby?

javascript - dygraphs - 摆脱 "sparkline"样式图表的黑色 x 和 y 轴?

javascript - Jquery获取样式属性并分配负值

如果弹出窗口关闭,Javascript 停止/重置计时器

php - JSON 数据未在 POST 中发送?