php父级目录文件包函问题
程序员文章站
2022-06-03 14:20:20
...
问题: 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
好了,创建三个文件:
//文件路径:/var/www/html/a.php php echo "a.php";
//文件路径:/var/www/html/test/b.php php include "../a.php"; echo "b.php"; ?>
//文件路径:/var/www/html/c.php php include "./a.php"; echo "c.php"; ?>
主要来看b.php
我们期待的执行结果是,
但是实际上呢:
但是c.php文件中执行没有问题。
解决方案:
修改/etc/php.ini文件
在第380行的open_basedir属性。
在其后面添加网站根目录
open_basedir =.:/tmp/:/var/www/html/
open_basedir属性是做什么的呢?表示允许访问的目录,开启这个配置项,可以防止php木马跨站。
上一篇: 简单谈谈php浮点数精确运算