Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.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_File - Fatal编程技术网

Php 阻止用户下载特定目录中的文件

Php 阻止用户下载特定目录中的文件,php,file,Php,File,我的网站是用PHP编写的。 库文件存储在名为“Library”的目录中 在我的php中,我通过 require_once('library/myfile.php.inc'); 但是,如果用户键入 他们可以下载源代码。 如何防止这种情况发生?在root/library/.htaccess下创建.htaccess文件 然后写下 <FilesMatch ".*"> Order Allow,Deny Deny from All </FilesMatch>

我的网站是用PHP编写的。 库文件存储在名为“Library”的目录中

在我的php中,我通过

require_once('library/myfile.php.inc'); 
但是,如果用户键入

他们可以下载源代码。
如何防止这种情况发生?

在root/library/.htaccess下创建.htaccess文件 然后写下

<FilesMatch ".*">
    Order Allow,Deny
    Deny from All
</FilesMatch>

命令允许,拒绝
全盘否定

将chmod设置为仅允许组和所有者访问文件
。htaccess
规则将涵盖该场景。省略“.inc”(不再是2004年)或配置您的Web服务器以正确处理文件扩展名(例如htaccess)。或者,您可以调用它们
*.inc.php
(或者更好,只需
*.php
)并检查文件中是否包含或直接调用了该文件。通常,调用includes myfile.inc.php,然后在其周围包装标记也是明智的——这样,文件在服务器上被解析为php,因此源代码永远不会发送到浏览器。。。。请注意,这并不是100%保证的(因为文件中的任何过程代码仍将被处理),但总比不这样做要好,并且非常适合类文件,如果没有任何过程代码,类文件根本不会运行。