文件只能由应用程序访问

时间:2014-03-27 12:11:25

标签: php permissions

这可能是一个愚蠢的问题,但我不确定如何查找它。我有一个config.xml文件,其中包含一些不应公开的信息,因此,如果我访问www.domain.com/config.xml,则应保护此文件,但我的Web应用程序需要从此文件中读取。

我已尝试将此文件的权限(在托管时)设置为" 000" (基于linux)但然后我的脚本无法读取文件。但是当我把它设置为" 600"那么每个人都可以访问这个文件。

你能指出正确的方向吗?我只需要将此文件隐藏给公共用户,但我的php脚本可以看到并访问它。

1 个答案:

答案 0 :(得分:1)

您可以将XML文件放在公共文件夹之外,它仍可供您的应用程序访问,但不能访问外部世界。

实施例。如果您的公共目录是 / var / www / site / public_html ,请将您的XML文件放入 / var / www / site /

<强> EDIT1: 如果上述情况不符合您的需求,您可以使用htaccess:

<Files "config.xml">
  Order Allow,Deny
  Deny from all
</Files>

EDIT2 :由于您无法使用上述任何一项,请尝试第三种选择:

RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !www.yoursite.com [NC]
RewriteRule \.(xml)$    -   [F,NC]

Source