【发布时间】:2017-05-10 11:08:49
【问题描述】:
我尝试使用 htacess 模块来保护位于 www.example.com/site/all/themes/mytheme/my.json 路径中的 json。它从来没有为我工作过。
当有人访问此链接时,他们可以轻松阅读 json 文件的内容。
谁能建议一个好方法来保护我在 drupal 7 中的 json 文件。
【问题讨论】:
我尝试使用 htacess 模块来保护位于 www.example.com/site/all/themes/mytheme/my.json 路径中的 json。它从来没有为我工作过。
当有人访问此链接时,他们可以轻松阅读 json 文件的内容。
谁能建议一个好方法来保护我在 drupal 7 中的 json 文件。
【问题讨论】:
将 json 文件放在一个目录中,并使用 .htaccess 或其他方式(文件权限)对其进行保护,使其无法由 Web 服务器提供服务。
然后(可能在其他目录中)创建简单的 php 文件,该文件将读取(通过文件系统,允许访问)并打印出该文件。如果需要,请添加 json 标头。还在 php 文件的开头添加一些简单的身份验证。比如:
<?php
if ($_GET['password'] != 'fdsfsf23#rsd$f2') die;
这种方式只有传入有效的密码参数才能访问json。
【讨论】:
我不建议您将私有数据存储在公共目录中的 json 文件中。如果您有一些敏感数据,您可以使用 Drupal 的私有目录或简单地将文件移到 Drupal 根目录之外。
要在您的 Drupal 根目录中全局阻止 .json 文件,请尝试将其添加到您的 .htaccess 中:
<Files "*.json">
Order Deny,Allow
Deny from all
</Files>
另外不要忘记在您的虚拟主机中配置 AllowOverride 标志。
【讨论】: