Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ajax站点内容保护是否可行?_Javascript_Jquery_Ajax_Html_Web - Fatal编程技术网

Javascript ajax站点内容保护是否可行?

Javascript ajax站点内容保护是否可行?,javascript,jquery,ajax,html,web,Javascript,Jquery,Ajax,Html,Web,我在考虑创建一个站点,通过jquery和AJAX连接从.txt文件或类似文件加载站点内容。问题是,如果我这样做了,人们(我指的是黑客之类的人)就不能过来改变我的.txt文件吗?我有什么办法可以确保这一点吗 问题是,如果我这样做,人们(我指的是黑客之类的人)就不能来改变我的.txt文件吗 除非他们能访问你的服务器,否则不行 当然,他们可以从您的服务器读取.txt文件,并根据需要处理这些内容。但是他们不能让你的网站在没有黑客攻击的情况下做其他事情。(在这方面,不管是.txt文件还是普通HTML文件。

我在考虑创建一个站点,通过jquery和AJAX连接从.txt文件或类似文件加载站点内容。问题是,如果我这样做了,人们(我指的是黑客之类的人)就不能过来改变我的.txt文件吗?我有什么办法可以确保这一点吗

问题是,如果我这样做,人们(我指的是黑客之类的人)就不能来改变我的.txt文件吗

除非他们能访问你的服务器,否则不行


当然,他们可以从您的服务器读取.txt文件,并根据需要处理这些内容。但是他们不能让你的网站在没有黑客攻击的情况下做其他事情。(在这方面,不管是.txt文件还是普通HTML文件。)

如果无法访问您的服务器,坏人无法更改.txt文件(顺便说一句,您使用的文件类型无关紧要)。因此,请确保您的密码等安全,您的安全就在安全的一面。

只要AJAX请求带有
HTTP\u X\u REQUESTED\u和
(jQuery AJAX请求具有此功能),您就可以使用PHP将用户重定向到文件之外,如下所示:

<?php
header('Content-type: text/plain');
if(strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) !== 'xmlhttprequest') { 
   // if not ajax request, then redirect to homepage
   header("Location: /"); 
   exit; 
}
?>


如果这是在文本文件的顶部,那么它将起作用,但您必须使用
.php
扩展名而不是
.txt
请求文本文件,但它仍然是一个文本文件,因为第一个
头()
call将其设置为纯文本。

有人会如何更改存储在服务器上的文本文件?这正是我想问的问题。如果你的服务器设置为随机用户可以更改其上的文件,那么你的网站架构是什么并不重要。@user1938700如果有人(比如黑客)如果你能编辑一个存储在服务器上的文件,我想每个网站都会死掉。JavaScript、CSS、PHP、HTML和所有其他类型的文件都可以编辑。那太糟糕了。但是,如果用户在浏览器中键入文本文件的url,但网站访问该文件以进行渲染,则无法编辑该文件,除非该用户有权访问服务器。那么,有没有办法让用户无法读取该文本文件?没有人会想到西班牙宗教法庭!那么,如果用户在浏览器中键入文本文件的url,但要访问该文件以进行渲染的站点,有没有办法让用户无法读取该文本文件?@user1938700:您可以采取一些措施使其变得困难(如果同一个客户端最近没有抓取您的.html文件或其他文件,服务器端检查拒绝访问.txt文件,执行一次性访问令牌,使请求带有令牌,并检查令牌服务器端以确保它是由相同的IP地址请求的,并且以前没有被请求过,等等。),但如果只是网络内容,又何必麻烦呢?再说一次,这和正常的网络内容没有什么区别,因为它完全可以访问。@user1938700-你可以从20世纪早期的一些英国乡村诗歌开始,然后再看披头士,但也有一些次要的,没有任何天赋的。结束于《美国心理医生》,你很快就会明白了对人类的状况有一种无法使用、无法解释和无法阅读的讽刺。如果你想要一种简单的方法,那么在请求中添加一个标题就非常简单了……关于
X-request-With
,没有什么故障保险……这只是一个convenience@charlietfl这是我所知道的唯一方法。如果你知道更好的方法,请随时发布答案。@Nathan我只是指出,这不是一种安全机制,在什么样的世界里它都不容易被破坏,这是一种保护,不受任何东西的伤害?“是的,但它还是比什么都没有要好”--以什么方式?假装你受到保护比根本没有保护更糟糕。