今天在帮助一个朋友配置一台服务器时发现网站配置好了缓存目录读写不成功,在打开错误时发现提示 warning: file_exists() [function.file-exists]: open_basedir restriction in effect. file(../license.php) is not within the allowed path(s): 错误了,下面一起来看此问题解决办法
先来看配置文件
$cache = new cache(43200,’d:/wwwroot/cache/tmp/anzhuo/’);//参数1 秒,参数2内容$page = intval(isset($_get[‘page’])?$_get[‘page’]:1);$key = ‘anzhuo_data_4’.$page;$values = $cache->display($key);
这个是生成缓存文件了,但是发现生成是提示
warning: file_exists() [function.file-exists]: open_basedir restriction in effect. file(../license.php) is not within the allowed path(s):
问题是出现在了php.ini上面了 原因是php.ini里设置了
open_basedir=/var/web/w0895/:/tmp:/usr/lib/php
这里加上相关的目录就可以了
解答:其实open_basedir 这个是用来限制php的目录访问权限什么的,如果不在允许的范围内,php就不能访问。这个 open_basedir 在 php.ini 里可以设定,也可以在
apache的httpd.conf 里面设定
例如:
php_admin_value open_basedir “d:/wwwroot/cache/tmp/anzhuo/”
再比如:
php_admin_value open_basedir =/var/web/w0895/:/tmp:/usr/lib/php
好了再重启apache问题解决了。
以上就介绍了php错误提示 open_basedir restriction in effect 解决,包括了方面的内容,希望对php教程有兴趣的朋友有所帮助。