You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WordPress无法上传图片,后台JS报错求助

解决WordPress后台媒体上传JS报错问题

从你描述的情况来看,Uncaught SyntaxError: expected expression, got '&lt;'这类错误是核心诱因——它说明浏览器尝试解析moxie.min.js、plupload.min.js这些JS文件时,拿到的不是合法的JavaScript代码,而是HTML内容(&lt;是HTML转义后的<,大概率是某个错误页面的片段)。这种异常会直接导致依赖这些库的wp.Uploader无法初始化,进而引发媒体库加载失败、上传功能失效的连锁问题。

下面是我整理的分步排查方案,建议按优先级尝试:

1. 先查PHP错误日志,定位内容输出异常的根源

JS文件返回HTML,几乎都是因为服务器端PHP代码执行出错,错误内容被混入了JS的响应流里。你可以这么操作:

  • 打开站点根目录的wp-config.php文件,添加/修改以下代码:
    define('WP_DEBUG', true);
    define('WP_DEBUG_LOG', true);
    define('WP_DEBUG_DISPLAY', false);
    
    这会把错误日志写到wp-content/debug.log里,避免在页面上直接显示错误干扰排查。
  • 触发报错操作(比如进入媒体库、尝试上传图片),然后打开debug.log查看是否有PHP致命错误、警告,这些信息通常能直接指向出问题的插件或主题文件。

2. 排查插件/主题冲突

即使管理员没有手动操作,插件自动更新也可能引发兼容性问题:

  • 临时禁用所有插件:通过FTP连接服务器,把wp-content/plugins文件夹重命名为plugins_disabled,然后刷新后台测试上传功能。如果恢复正常,说明是某个插件导致的问题。
  • 定位单个问题插件:把文件夹改回plugins,然后逐个启用插件,每启用一个就测试一次,直到问题重现,就能精准定位到故障插件。
  • 排除主题问题:同理,把当前主题文件夹重命名,让WP自动切换到默认主题(比如Twenty Twenty-Four),测试是否恢复正常,以此排除主题代码的问题。

3. 检查.htaccess文件是否异常

错误的Rewrite规则可能导致JS文件被错误解析:

  • 先备份当前的.htaccess文件(复制一份到本地留存),然后删除服务器上的.htaccess。
  • 进入WordPress后台的「设置→固定链接」,直接点击「保存更改」,WP会自动生成默认的.htaccess规则。
  • 测试上传功能是否恢复正常。

4. 清空全链路缓存

如果你的站点使用了CDN或者缓存插件,可能缓存了错误的JS文件:

  • 清空缓存插件的所有缓存,或者临时禁用缓存插件。
  • 如果用了CDN,登录CDN控制台清空边缘节点缓存。
  • 清空浏览器缓存(快捷键Ctrl+Shift+Delete),然后用无痕模式测试后台功能。

5. 验证核心文件权限与完整性

虽然你重装了WP,但可能存在文件权限错误或者文件未正确替换的情况:

  • 检查wp-includes/js/plupload/和wp-includes/js/media/目录下的文件权限,通常文件权限设为644,文件夹权限设为755。
  • 从WordPress官方下载对应版本的安装包,解压后把上述两个目录里的文件手动通过FTP覆盖(注意不要误删其他核心文件),确保核心JS文件是完整无损坏的。

6. 排查服务器安全规则(比如mod_security)

有些服务器的mod_security规则会误拦截WP的JS文件请求,导致返回错误页面。你可以联系主机提供商,询问最近是否调整了安全规则,或者让他们暂时关闭mod_security测试是否解决问题。


内容的提问来源于stack exchange,提问作者Luca Landi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.09 17:53:04