php跨目录读写访问几处设置

假设限制/www/web/目录内运行和读写。

首先, 第一处,注意在网站的根目录可以自定义.user.ini文件配置来设置

具有 PHP_INI_PERDIR 和 PHP_INI_USER 属性的项目可在此文件定义,比如

open_basedir,disable_functions,upload_max_filesize。

每隔5分钟重新加载配置,也称之为php运行时配置

这是宝塔和aapanel的习惯用法

open_basedir=/www/web/:/tmp/:/proc/

第二处,查看nginx的两个配置文件

fastcgi.conf或者conf.d目录下的conf文件,是否有类似如下语句

fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp:/proc/";

第三处,查看php.ini文件

open_basedir = /www/web/:/tmp/:/proc/

如果需要防止跨站,应在这三处任意一项设置

如果要自由读写任意目录,那么检查并注释掉这三处定义,否则出现

open_basedir 相关出错。

open_basedir restriction in effect.

is not within the allowed path(s):

点赞

发表评论

电子邮件地址不会被公开。必填项已用 * 标注