Mac Big Sur系统下XAMPP 8.0.7-0环境PHP文件上传异常排查求助
XAMPP 8.0.7-0(macOS Big Sur)PHP文件上传故障排查方案
PHP返回上传error 0仅代表服务端已完整接收上传文件,故障出在接收后的文件存储环节,针对你使用的独立服务版XAMPP(VM虚拟机架构,非应用程序目录安装版),按以下步骤排查:
- 确认当前使用的是VM架构XAMPP,该版本所有服务运行在独立的轻量化虚拟机内,你在Mac本地目录配置的权限、路径映射均不生效,所有文件操作的目标路径需指向虚拟机内部文件系统路径
- 检查上传逻辑中
move_uploaded_file()函数的目标路径参数,VM版XAMPP默认Web根目录为虚拟机内的/opt/lampp/htdocs/,如果你填写了Mac本地的/Applications/XAMPP/htdocs/类路径,会直接触发写入失败 - 进入虚拟机终端验证目录权限:打开XAMPP控制面板,在「General」tab点击「Open Terminal」进入虚拟机命令行,执行
ls -ld 上传目标目录绝对路径,确认目录所属用户为Apache运行用户daemon,若权限不符依次执行:chown daemon:daemon 上传目标目录绝对路径 chmod 755 上传目标目录绝对路径 - 查看PHP错误日志定位具体问题,虚拟机内PHP错误日志默认路径为
/opt/lampp/logs/php_error_log,在虚拟机终端执行tail -n 20 /opt/lampp/logs/php_error_log即可查看最近20条报错,可直接定位路径不存在、权限不足等具体故障点 - 如需在Mac本地直接编辑站点文件,可在XAMPP控制面板的「Volumes」tab点击「Mount」挂载虚拟机内的
/opt/lampp目录,挂载后可在本地Finder访问对应文件,但配置上传路径时仍需填写虚拟机内部的绝对路径,不能使用本地挂载后的路径
内容的提问来源于stack exchange,提问作者Ediz Göldeli
相关产品推荐
相关产品推荐

