无法修改upload_tmp_dir且PHP无法访问/tmp上传文件求助
PHP无法访问/tmp目录下的上传文件,open_basedir已配置该目录仍报错
我需要实现的功能是:通过POST请求从网页向服务器上传图片并进行处理。
最近遇到问题:PHP无法访问位于/tmp文件夹中的上传文件,错误信息如下(XXXXX为我的域名):
Warning: getimagesize(): open_basedir restriction in effect. File(/tmp/phpQ3Y7XN/image.png) is not within the allowed path(s): (/var/www/vhosts/XXXXX/: /tmp/:/tmp/*) Warning: getimagesize(/tmp/phpQ3Y7XN/image.png): Failed to open stream: Operation not permitted
我已经在open_basedir参数里配置了/tmp目录,但还是出现这个错误,实在搞不懂原因。
当前服务器环境:
- Debian 11.7
- 带ModSecurity的Plesk Obsidian 18.0.58 Update #2
- PHP 8.3.3(独立FPM应用)
我已经尝试过这些操作,但都没用:
- 修改域名对应的php.ini文件,把upload_tmp_dir设为网站根目录下的路径,但上传文件还是自动存在/tmp
- 临时禁用ModSecurity(它包含SecUpload策略),没有任何效果
- 重启过系统
恳请大家提供解决建议,谢谢!
内容的提问来源于stack exchange,提问作者Shin
相关产品推荐
相关产品推荐

