2013-07-03 64 views
2

我有一个网站,并且JavaScript文件正在根据上一个选择选项将一个json文件(使用getJson)加载到一个选择元素的选项中。我想隐藏公共访问json文件。我怎么做?

但与此同时,公众可以直接访问该json文件。

我只希望服务器可以访问这个文件并在这个选择元素中加载相应的选项。但我不希望公众可以直接访问该json文件(避免他们下载等..)

我该怎么做?通过htaccess?或者别的?我在htaccess中尝试了'FILES'规则,但服务器无法访问json文件。

+0

我看到了在

0

您无法真正保护您发送到客户端浏览器的数据。确定的用户将能够找到它。所以,最好的选择是在将数据发送到客户端之前在服务器上完成过滤和其他逻辑。

0

您无法保护json数据。如果公众无法访问数据,那么您的页面也无法访问它。

0

您可以在JSON文件 的顶部检查请求的IP,如果它不是那么你的服务器退出

这是例如

if($_SERVER['REMOTE_ADDR'] != '190.180.0.1') 
exit ('You can not use this file'); 

,并确保你有你的服务器IP更换IP

我错过了这部分(和JavaScript文件是加载)

确保上面的代码将no't工作因为Java脚本是客户端 所以如果你阻止了除你的服务器之外的所有请求,那么你的用户也无法加载这个文件

0

如果你正在运行Apache,你可以使用mod_rewrite。我不确定,但我认为规则看起来像,RewriteRule ^(myfile.json) - [F,L,NC]

相关问题