Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/268.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/.htaccess/5.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
PHP,停止访问文件_Php_.htaccess_Directory - Fatal编程技术网

PHP,停止访问文件

PHP,停止访问文件,php,.htaccess,directory,Php,.htaccess,Directory,因此,我有许多用于存储数据的.txt和.xml文件,我是否可以让它们存储数据,但用户无法在web浏览器中打开它们 我在想,他们可能是使用.htaccess来实现这一点的一种方法,但到目前为止,在对这一问题进行研究时,还无法找到任何答案 将它们存储在文档根目录之外(推荐) 在web根目录中使用以下htaccess 命令允许,拒绝 全盘否定 命令允许,拒绝 全盘否定 创建一个.htaccess文件并将其放入目录中,然后使用: <filesMatch ".(txt|xml)$">

因此,我有许多用于存储数据的.txt和.xml文件,我是否可以让它们存储数据,但用户无法在web浏览器中打开它们

我在想,他们可能是使用.htaccess来实现这一点的一种方法,但到目前为止,在对这一问题进行研究时,还无法找到任何答案

  • 将它们存储在文档根目录之外(推荐)
  • 在web根目录中使用以下htaccess
  • 
    命令允许,拒绝
    全盘否定
    命令允许,拒绝
    全盘否定
    
    创建一个.htaccess文件并将其放入目录中,然后使用:

    <filesMatch ".(txt|xml)$">
        order deny,allow
        deny from all
        allow from your.ip.xxx.xxx ## add this line if you allow certain users access to your data
    </filesMatch>
    
    
    命令拒绝,允许
    全盘否定
    允许从your.ip.xxx.xxx###如果允许某些用户访问您的数据,请添加此行
    

    或者,您可以将.txt/xml文件移到根目录之外,我建议您这样做,除非您的脚本需要进行大量修改,但这是值得的。

    将它们存储在文档根目录之外,这样您的web服务器将无法回复对它们的请求。这将比依赖
    .htaccess
    文件更可靠。

    有两种方法可以解决此问题。如果您的服务器是Apache,您可以将文件存储到名为“data”的特定文件夹或您喜欢的任何文件夹中,在该文件夹中,您将有一个
    .htaccess
    文件,其中有一行内容:
    拒绝所有人
    。仅此而已,工作起来很有魅力

    然而,一旦某些服务器维护可以使Apache忽略
    .htaccess
    文件一段时间,那么您的安全性就消失了,这并不是100%的保证。在这种情况下,您可能更愿意将这些文件存储在公用文件夹之外

    当托管一个网站时,通常的做法是有一个像
    /home/mywebsite.com/public\u html/
    这样的组织,其中
    public\u html
    子文件夹是世界所看到的网站结构的实际位置,但是
    /home/mywebsite.com/
    文件夹中的所有内容都属于您的,您可以按照自己的意愿使用,主要存储公众不应该访问的文件和信息


    该组织可能还希望防止公众直接访问敏感的
    .php
    文件,特别是包含密码的文件,Apache维护可以再次使其停止解释php文件并显示代码。曾经发生在我身上,并不酷。

    。htaccess将在整个目录上工作;因此,如果将文件放在代码运行的目录之外的目录中,应该可以阻止其中一个而不阻止另一个。到目前为止你尝试了什么?你的研究把你带到哪里去了?
    <filesMatch ".(txt|xml)$">
        order deny,allow
        deny from all
        allow from your.ip.xxx.xxx ## add this line if you allow certain users access to your data
    </filesMatch>