嘿,我想知道是否有一种方法来查看您的文件时使用ajax。例如 我有ajax设置等,我提出了一个请求,但任何人都可以找出我的文件夹结构,并去我的PHP文件,任何事情都可能发生,我想要扔他们404如果他们尝试访问该文件。我没有尝试过任何东西,因为我没有最小的线索。 你需要使用.htaccess吗?只能通过ajax访问文件
我试图在互联网上搜索这个我找不到任何东西,所以如果有另一个类似这样的帖子让我知道并给我一个链接谢谢你。
嘿,我想知道是否有一种方法来查看您的文件时使用ajax。例如 我有ajax设置等,我提出了一个请求,但任何人都可以找出我的文件夹结构,并去我的PHP文件,任何事情都可能发生,我想要扔他们404如果他们尝试访问该文件。我没有尝试过任何东西,因为我没有最小的线索。 你需要使用.htaccess吗?只能通过ajax访问文件
我试图在互联网上搜索这个我找不到任何东西,所以如果有另一个类似这样的帖子让我知道并给我一个链接谢谢你。
不是一件容易的事。
与任何其他HTTP访问一样,Ajax是通过请求创建的。正常请求通过GET
方法完成,就像有一个GET
Ajax请求方法一样。
我面临的情况和你不是太长,我的解决方案,尽管远非完美,是这样的:
POST
方法;一下添加到一个文件,你include
在应该通过Ajax来获取每个PHP的开始/ require
:
if ($_SERVER['REQUEST_METHOD'] != 'POST') {
header('Location: /404page.php'); //The/represents the site root
exit;
}
这样一来,人们试图打开页面直接将被重定向到404页面。
当然,人们可以很容易地伪造一个POST请求头。您也可以为每个Ajax调用添加一个POST参数,但是也可以伪造一个头文件,也可以轻松地伪造POST数据。
只需进行强大的服务器端验证以确保用户有权查看该页面,并且应该接收的所有数据都在那里并且是有效的。如果有人用请求标头四处乱窜,并在应用程序之外看到丑陋的页面,那毕竟不是你的问题。
我知道你说过你没有尝试过任何东西,但是这里有个问题:[你有什么尝试?](http://www.whathaveyoutried.com)。 – rationalboss
@ArtursLapins首先让你自己了解AJAX这个主题,以及它究竟做了什么,这将是非常明智的。主要观点是,这是一般情况。如果您尝试访问的文件可以通过浏览器(或任何允许访问的协议(本例中为http/https))进行检索,则可以使用名为AJAX的方法来检索该文件。 – dbf
同意上面的dbf你需要先理解AJAX是什么,也可以尝试使用额外的头文件或传递请求的信息。 – Gntem