最近一个ThinkPHP5做的项目硬盘满了,就给上传目录做了个软链接,即把/public/uploads
使用ln -s
命令指向了别的硬盘的目录/data/uploads
,结果文件都上传失败,报500错误:
is_dir(): open_basedir restriction in effect. File "/www/wwwroot/test/public/uploads/20220401" is not within the allowed path
就是说这个上传路径不在允许访问的目录下。
这个项目是在宝塔下配置的,open_basedir
变量在/public/.user.ini
文件中定义,所以直接修改它,把public
目录和实际路径也加上就好。
最终效果如下:
open_basedir=/www/wwwroot/test/:/tmp/:/www/wwwroot/test/public/:/data/uploads/
改完之后重启下nginx
服务使其生效即可。