php不能用父目录,php父级目录文件包函问题

问题: 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

phpecho "a.php";

//文件路径:/var/www/html/test/b.php

phpinclude "../a.php";echo "b.php";?>

//文件路径:/var/www/html/c.php

phpinclude "./a.php";echo "c.php";?>

主要来看b.php

我们期待的执行结果是,

test.jsp?url=http%3A%2F%2Fimages.cnitblog.com%2Fblog2015%2F644543%2F201503%2F231804023804886.png&refer=http%3A%2F%2Fwww.cnblogs.com%2Fmediciyan%2Fp%2F4360628.html

但是实际上呢:

test.jsp?url=http%3A%2F%2Fimages.cnitblog.com%2Fblog2015%2F644543%2F201503%2F231805536149769.png&refer=http%3A%2F%2Fwww.cnblogs.com%2Fmediciyan%2Fp%2F4360628.html

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

解决方案:

修改/etc/php.ini文件

在第380行的open_basedir属性。

在其后面添加网站根目录

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

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

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值