
WordPress提示“缺少临时文件夹”,重点应放在 PHP 的上传临时目录、目录访问权限和磁盘状态。它与媒体库最终保存目录不是同一环节,因此只修改 uploads 目录往往无效。
上传文件要经过两个位置
浏览器提交文件后,PHP先把数据写入临时位置;WordPress再检查文件并保存到媒体目录。如果第一步失败,文件还没有进入正常媒体处理流程。最终目录可写,并不能证明临时目录可用。
先记录完整报错、发生时间、文件类型和大小,并用一张小尺寸普通JPEG测试。所有文件都立即失败,更应检查环境配置;只有某个文件失败,则需要继续区分格式和文件损坏。
请核对这四项
| 检查项 | 要确认的内容 |
|---|---|
| upload_tmp_dir | 网站当前PHP进程实际使用的值,而不是另一版本的配置 |
| 目录存在性 | 配置路径存在,并且处于该网站允许访问的范围 |
| 写入权限 | 运行PHP的用户能写入,不能只看管理员账户是否能写 |
| 空间与配额 | 磁盘、账户配额和inode是否仍可用 |
主机可能使用系统临时目录,也可能为每个站点设置独立目录。不要直接套用网上示例路径。若有 open_basedir 等目录限制,也要核对临时位置是否被允许访问。
修复时避免扩大权限
优先在主机提供的PHP设置中修正路径,或交由主机管理员按该账户配置。确需创建目录时,应设置正确所有者及最小必要权限,不要把整站目录递归改为777。
在 wp-config.php 增加某个常量,并不一定能改变PHP接收上传时的临时目录。若主机限制不可由应用层覆盖,应从PHP或主机配置修复。配置变更后可能需要重载对应服务,执行范围应限定到这个网站。
怎样确认修复成功
先上传小图片,再上传正常业务大小的图片;确认媒体库有文件、服务器产生实际文件且前台能访问。随后检查同一时间段的错误日志是否仍有临时文件写入错误。
测试用的PHP环境信息页面可能暴露路径和配置,检查结束后应删除。对外提供日志时,应隐去账户路径、凭据和访问令牌。
能否把临时目录放在公开上传目录? 不建议为了方便随意选公开路径。应使用主机支持、访问受限且生命周期可管理的位置,并确认与PHP配置一致。
参考资料
相关问题
本文为通用排查指南,依据所列官方资料整理;菜单名称和行为可能随版本及主机环境变化。配图为AI生成的概念示意,不是实际故障截图。
