欢迎光临好主题官网!致力于 WordPress 企业主题定制开发及 WP外贸模板下载。

WordPress 后台 CSS 文件 404 排查记录:升级后后台样式丢失,最终发现是防盗链配置导致

文章目录

问题现象

某 WordPress 网站升级到最新版本后,后台出现样式异常:

  • 后台页面布局错乱
  • 按钮样式丢失
  • 插件安装页面显示异常
  • Gutenberg 编辑器部分界面无法正常加载

浏览器开发者工具显示多个 CSS 文件返回 404,例如:

/wp-includes/css/classic-themes.min.css
/wp-admin/css/common.min.css

奇怪的是:

  • 网站前台访问正常
  • WordPress 登录正常
  • 插件功能基本正常
  • 仅后台静态资源加载失败

初步排查

检查 WordPress 核心文件

首先确认报错的 CSS 文件是否真实存在。

检查后发现:

  • CSS 文件存在
  • 文件权限正常
  • WordPress 核心文件完整

因此可以排除:

  • WordPress 升级失败
  • 文件丢失
  • 权限错误

等常见问题。

测试资源访问状态

使用浏览器和命令行工具分别测试:

后台 CSS 文件

HTTP/1.1 404 Not Found

后台图片资源

HTTP/1.1 404 Not Found

登录页面

HTTP/1.1 200 OK

网站首页

HTTP/1.1 200 OK

从测试结果来看:

资源类型 状态
PHP 文件 正常
HTML 页面 正常
CSS 文件 404
图片文件 404

问题似乎只影响静态资源。

排查方向转向服务器配置

由于:

  • WordPress 文件完整
  • PHP 正常运行
  • 网站首页正常访问

因此开始检查 Web 服务器配置。

在站点配置中发现了一段防盗链规则:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !example.com [NC]
RewriteCond %{HTTP_REFERER} !www.example.com [NC]
RewriteRule .(jpg|jpeg|gif|png|js|css) /404.html [R=404,NC,L]

这段规则用于限制外部网站盗链资源。

表面看没有问题,但实际上隐藏着一个常见陷阱。

真正的原因

空 Referer 请求被误判

很多人认为浏览器请求资源时一定会携带 Referer。

实际上并非如此。

以下情况经常出现空 Referer:

  • 浏览器预加载资源
  • HTTP/2 请求
  • 后台异步加载
  • 插件管理页面
  • 浏览器隐私策略
  • 某些安全软件或扩展

例如:

GET /wp-includes/css/classic-themes.min.css
Referer:

当 Referer 为空时,上述规则会判断:

Referer 不是本站域名
↓
触发防盗链
↓
返回404

于是原本正常存在的 CSS 文件被服务器主动拦截。

为什么升级 WordPress 后才出现?

很多站长会误认为:

升级 WordPress 后后台样式异常,说明 WordPress 存在 Bug。

实际上并不是。

更准确地说:

WordPress 升级
↓
后台资源加载方式变化
↓
部分资源请求不再携带 Referer
↓
触发旧的防盗链规则
↓
返回404

换句话说:

WordPress 升级只是触发条件,而不是根本原因。

真正的问题是防盗链规则过于严格。

解决方案

方案一:关闭防盗链(推荐)

对于大多数企业官网来说:

  • 图片价值有限
  • 被盗链影响很小
  • 防盗链收益不明显

因此直接关闭防盗链通常是最简单有效的方案。

关闭后:

  • 后台 CSS 恢复正常
  • 后台图片恢复正常
  • 插件页面恢复正常

问题立即解决。

方案二:仅保护图片资源

如果确实需要防盗链,建议只针对图片文件。

例如:

RewriteEngine On

RewriteCond %{REQUEST_URI} \.(jpg|jpeg|png|gif|webp|avif)$ [NC]
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^https?://(www\.)?example\.com [NC]
RewriteRule .* - [F,L]

这样:

✅ 图片受保护

同时:

✅ CSS 正常加载
✅ JS 正常加载
✅ WordPress 后台正常运行

不建议防盗链的文件类型

以下资源尽量不要加入防盗链规则:

css
js
svg
woff
woff2
ttf
eot

这些资源经常被:

  • 后台页面
  • 编辑器
  • 插件
  • 浏览器预加载机制

直接调用。

限制后容易产生各种莫名其妙的问题。

最终结果

关闭防盗链后再次测试:

HTTP/1.1 200 OK
Content-Type: text/css

所有后台样式恢复正常。

插件安装页面、编辑器以及后台菜单均恢复显示。

总结

如果你遇到以下问题:

  • WordPress 后台 CSS 404
  • 后台样式丢失
  • 插件安装页面错乱
  • Gutenberg 编辑器异常
  • 升级 WordPress 后后台显示异常

并且确认文件实际存在,

那么请优先检查服务器的防盗链配置。

很多时候问题并不在 WordPress,而是在 Web 服务器对 CSS、JS 等静态资源的错误拦截。

排查关键词

WordPress 后台 CSS 404
classic-themes.min.css 404
common.min.css 404
WordPress 后台样式丢失
WordPress 升级后后台异常
Apache 防盗链导致 CSS 404
宝塔防盗链导致 WordPress 后台异常

这个问题并不常见,但一旦遇到,往往会让人误以为是 WordPress 核心文件损坏。实际上,检查一下防盗链规则,可能几分钟就能解决。

本文由 好主题 原创整理,致力于分享实用的 WordPress 建站知识与主题开发经验。 我们专注于提供高质量的 WordPress企业主题 资源,帮助中小企业轻松构建专业网站。 转载请注明来源,并保留原文链接,感谢您的支持与理解。

联系我们

教程看不懂?联系我们免费为您解答!免费助力个人,小企站点!

客服微信
相关文章
主题推荐
还没有账号?

会员注册

成为会员,获得更多专属优惠!

验证码: 加载中... =

已有账号?