ホームページ  >  記事  >  php教程  >  php父级目录文件包函问题

php父级目录文件包函问题

WBOY
WBOYオリジナル
2016-06-06 19:48:161279ブラウズ

问题: php子目录不能包函父目录中的文件。 环境: 网站根目录:/var/www/html/ PHP版本: 5.3.3 Apache版本:2.2 好了,创建三个文件: // 文件路径:/var/www/html/a.php ? php echo "a.php"; // 文件路径:/var/www/html/test/b.php ? php include "../a.ph

问题:

  php子目录不能包函父目录中的文件。

环境:

网站根目录:/var/www/html/

PHP版本: 5.3.3

Apache版本:2.2

好了,创建三个文件:

<span>//</span><span>文件路径:/var/www/html/a.php</span>
<span>php
    </span><span>echo</span> "a.php";

 

<span>//</span><span>文件路径:/var/www/html/test/b.php</span>
<span>php
    </span><span>include</span> "../a.php"<span>;
    </span><span>echo</span> "b.php"<span>;
</span>?>

 

<span>//</span><span>文件路径:/var/www/html/c.php</span>
<span>php
    </span><span>include</span> "./a.php"<span>;
    </span><span>echo</span> "c.php"<span>;
</span>?>

主要来看b.php

我们期待的执行结果是,php父级目录文件包函问题

 

但是实际上呢:php父级目录文件包函问题

但是c.php文件中执行没有问题。

 

解决方案:

修改/etc/php.ini文件

在第380行的open_basedir属性。

在其后面添加网站根目录

open_basedir =.:/tmp/:/var/www/html/

open_basedir属性是做什么的呢?表示允许访问的目录,开启这个配置项,可以防止php木马跨站。

 

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。