EdgeOne 静态域名 → 回源 WordPress

EdgeOne 静态域名 → 回源 WordPress 技术文档

1. 文档说明

本文档用于指导将 WordPress 网站中的静态资源通过腾讯云 EdgeOne 静态加速域名进行访问,实现:

用户浏览器 → EdgeOne 静态加速域名 → WordPress 源站

适用场景包括:

  • WordPress 主题 CSS、JS、字体、图片访问较慢;
  • 服务器带宽较小;
  • 想使用独立静态资源域名;
  • 不希望将文件迁移到 OSS/COS;
  • 希望通过 CDN 缓存降低源站压力;
  • 需要为 Argon 等 WordPress 主题静态文件加速。

2. 需求背景

2.1 当前问题

传统 WordPress 网站中,主题文件、插件文件、上传图片等静态资源通常直接由 WordPress 源站服务器提供。

例如:

https://www.example.com/wp-content/themes/argon/style.css
https://www.example.com/wp-content/themes/argon/assets/js/app.js
https://www.example.com/wp-content/themes/argon/assets/fonts/icon.woff2

当用户访问网站时,浏览器需要从 WordPress 源站加载这些资源。

如果源站存在以下情况:

  • 服务器带宽较小;
  • 源站距离用户较远;
  • 静态资源较多;
  • 并发访问较高;
  • 海外服务器在国内访问慢;
  • 静态资源未缓存;
  • CSS、JS、字体加载延迟较高;

就可能导致网站打开速度变慢。


2.2 解决思路

使用腾讯云 EdgeOne 创建一个静态资源加速域名,例如:

https://static.example.com

然后让该域名回源到 WordPress 主站:

https://www.example.com

最终资源访问方式从:

https://www.example.com/wp-content/themes/argon/style.css

变为:

https://static.example.com/wp-content/themes/argon/style.css

EdgeOne 会在边缘节点缓存该资源。


2.3 整体访问链路

用户浏览器
   ↓
static.example.com
   ↓
EdgeOne 边缘节点
   ↓ 缓存未命中时回源
WordPress 源站 www.example.com

缓存命中时:

用户浏览器 → EdgeOne 边缘节点 → 返回静态资源

缓存未命中时:

用户浏览器 → EdgeOne 边缘节点 → WordPress 源站 → EdgeOne 缓存 → 用户浏览器

3. 方案目标

本方案目标如下:

  1. 使用独立静态资源域名访问 WordPress 主题文件;
  2. 通过 EdgeOne 缓存 CSS、JS、图片、字体等静态文件;
  3. 降低 WordPress 源站静态资源访问压力;
  4. 提升用户访问速度;
  5. 保持文件仍在 WordPress 源站,无需迁移到 OSS/COS;
  6. 支持 HTTPS;
  7. 解决字体等资源跨域问题;
  8. 便于后续缓存刷新和维护。

4. 适用范围

4.1 适合的资源类型

适合通过该方案加速的资源包括:

.css
.js
.png
.jpg
.jpeg
.webp
.gif
.svg
.ico
.woff
.woff2
.ttf
.eot
.map

典型 WordPress 路径:

/wp-content/themes/
/wp-content/plugins/
/wp-content/uploads/

针对你的 Argon 主题,重点路径为:

/wp-content/themes/argon/

4.2 不建议缓存的路径

以下路径通常不建议通过静态域名缓存:

/wp-admin/
/wp-login.php
/wp-json/
/xmlrpc.php
/wp-cron.php
/?s=
/cart/
/checkout/
/my-account/

如果只是加速主题文件,一般只配置:

/wp-content/themes/argon/*

即可。


5. 必备资源

实施该方案前需要准备以下资源。


5.1 WordPress 源站

你需要已有一个可正常访问的 WordPress 网站,例如:

https://www.example.com

并且 Argon 主题资源可以直接访问,例如:

https://www.example.com/wp-content/themes/argon/style.css

5.2 域名

你至少需要一个主域名,并可以添加子域名解析。

示例:

主站域名:www.example.com
静态资源域名:static.example.com

如果你的主站是裸域:

https://example.com

也可以使用:

https://static.example.com

5.3 DNS 管理权限

你需要能在域名 DNS 管理后台添加 CNAME 记录。

例如:

static.example.com CNAME xxxxx.eo.dnse.com

5.4 EdgeOne 服务

你需要开通腾讯云 EdgeOne,并具备以下能力:

  • 添加站点;
  • 添加加速域名;
  • 配置源站;
  • 配置 HTTPS;
  • 配置缓存规则;
  • 配置 HTTP 响应头;
  • 刷新缓存。

5.5 HTTPS 证书

建议为静态域名配置 HTTPS:

https://static.example.com

可以使用:

  • EdgeOne 免费证书;
  • 腾讯云 SSL 证书;
  • 自有证书上传。

6. 推荐架构

6.1 基础架构

www.example.com
WordPress 主站,负责动态页面、后台、API、PHP 逻辑

static.example.com
EdgeOne 静态加速域名,负责 CSS、JS、字体、图片等静态资源

6.2 回源配置

加速域名:static.example.com
源站地址:www.example.com
回源协议:HTTPS
回源 Host:www.example.com

6.3 资源访问示例

源站原始资源:

https://www.example.com/wp-content/themes/argon/style.css

EdgeOne 加速后:

https://static.example.com/wp-content/themes/argon/style.css

7. EdgeOne 配置教程

以下步骤以:

主站:www.example.com
静态域名:static.example.com
主题路径:/wp-content/themes/argon/

为例。

实际操作时请替换为你自己的域名。


7.1 添加静态加速域名

进入 EdgeOne 控制台:

EdgeOne 控制台 → 站点管理 → 域名服务/加速域名 → 添加域名

填写:

加速域名:static.example.com
业务类型:静态加速/CDN 加速
源站类型:域名
源站地址:www.example.com

如果源站支持 HTTPS,建议选择:

回源协议:HTTPS

7.2 配置 DNS CNAME

EdgeOne 添加域名后,会提供一个 CNAME 地址,类似:

static.example.com.eo.dnse4.com

到你的 DNS 服务商添加解析:

类型 主机记录 记录值
CNAME static EdgeOne 提供的 CNAME

示例:

static.example.com CNAME static.example.com.eo.dnse4.com

等待 DNS 生效。

可以使用以下命令检查:

nslookup static.example.com

或:

dig static.example.com

7.3 配置 HTTPS

在 EdgeOne 中为:

static.example.com

开启 HTTPS。

建议配置:

HTTPS:开启
证书:免费证书或自有证书
TLS 版本:TLS 1.2 / TLS 1.3
HTTP/2:开启
强制 HTTPS:开启,可选

如果网站前台是 HTTPS,那么静态资源域名也必须是 HTTPS,否则浏览器会出现混合内容问题。


7.4 配置回源 Host

这是 WordPress 场景中非常重要的一项。

配置:

Host Header 重写:开启
回源 Host:www.example.com

原因是浏览器请求的是:

https://static.example.com/wp-content/themes/argon/style.css

但 WordPress 源站真正识别的站点域名可能是:

www.example.com

如果回源 Host 仍然是:

static.example.com

源站可能返回:

  • 404;
  • 403;
  • 跳转;
  • 证书错误;
  • 默认站点内容;
  • WordPress 地址异常。

所以建议设置:

回源 Host:www.example.com

7.5 配置缓存规则

建议只对静态资源路径设置缓存。

进入:

规则引擎 / 规则配置 → 新增规则

规则名称:

Argon 主题静态资源缓存

匹配条件:

请求路径匹配 /wp-content/themes/argon/*

动作:

节点缓存 TTL:7天 / 30天
浏览器缓存 TTL:1天 / 7天

推荐:

资源类型 节点缓存 TTL 浏览器缓存 TTL
CSS / JS 7 天 – 30 天 1 天 – 7 天
字体 30 天 7 天 – 30 天
图片 30 天 7 天 – 30 天
频繁修改文件 1 天 – 7 天 1 小时 – 1 天

如果你的 CSS/JS 带版本号,例如:

style.css?ver=1.2.3

可以设置更长缓存。


7.6 配置 CORS 响应头

如果浏览器报跨域错误,尤其是字体文件:

Access to font at 'https://static.example.com/xxx.woff2'
from origin 'https://www.example.com'
has been blocked by CORS policy

需要在 EdgeOne 中添加响应头。

进入:

规则引擎 → 新增规则 → 修改 HTTP 头 → 修改 HTTP 节点响应头

匹配条件建议:

请求路径匹配 /wp-content/themes/argon/*

添加响应头:

Access-Control-Allow-Origin: *

可选添加:

Access-Control-Allow-Methods: GET, HEAD, OPTIONS
Access-Control-Allow-Headers: *

推荐静态资源配置:

Header Value
Access-Control-Allow-Origin *
Access-Control-Allow-Methods GET, HEAD, OPTIONS
Access-Control-Allow-Headers *

注意:

如果你设置了:

Access-Control-Allow-Credentials: true

那么不能使用:

Access-Control-Allow-Origin: *

普通静态资源一般不需要 Access-Control-Allow-Credentials


7.7 配置压缩

建议开启:

智能压缩 / Gzip / Brotli

适合压缩的文件:

.css
.js
.svg
.html
.json
.xml

不建议重复压缩:

.jpg
.png
.webp
.gif
.woff2
.zip

这些通常已经是压缩格式。


7.8 开启 HTTP/2

建议开启:

HTTP/2:开启

如果套餐支持,也可以开启:

HTTP/3 / QUIC

HTTP/2 对静态资源加载有明显帮助。


7.9 防盗链,可选

如果你希望限制别人盗用你的静态资源,可以设置 Referer 防盗链。

允许 Referer:

https://www.example.com
https://example.com

但要注意:

  • 不要把空 Referer 全部拦截,可能影响正常访问;
  • 不要误伤搜索引擎;
  • 前期建议先不配置防盗链,确认稳定后再开启。

8. WordPress 侧配置教程

EdgeOne 配置完成后,还需要让 WordPress 页面中的静态资源 URL 变成 CDN 域名。

否则浏览器仍然会请求:

https://www.example.com/wp-content/themes/argon/...

而不是:

https://static.example.com/wp-content/themes/argon/...

由于使用的是argon主题直接在wordpress后台argon主题选项更改cnd即可。


9. 测试验证

9.1 验证 CDN 域名是否可访问

打开:

https://static.example.com/wp-content/themes/argon/style.css

如果能正常显示 CSS 内容,说明回源成功。


9.2 检查是否走 EdgeOne

使用浏览器开发者工具:

F12 → Network → 选择资源 → Headers

查看响应头中是否存在 EdgeOne 相关标识,例如:

x-cache
eo-cache-status
server

不同配置下响应头名称可能略有差异。


9.3 检查 CORS

执行:

curl -I https://static.example.com/wp-content/themes/argon/assets/fonts/example.woff2

检查是否返回:

Access-Control-Allow-Origin: *

9.4 检查缓存命中

连续请求同一资源:

curl -I https://static.example.com/wp-content/themes/argon/style.css
curl -I https://static.example.com/wp-content/themes/argon/style.css

第二次通常应更容易命中缓存。

你可以查看 EdgeOne 相关缓存头,例如:

HIT
MISS
BYPASS

具体字段以 EdgeOne 实际返回为准。


9.5 检查页面资源是否已替换

打开网站首页:

https://www.example.com

浏览器开发者工具:

F12 → Network

过滤:

css
js
font
img

确认资源是否来自:

static.example.com

而不是:

www.example.com

10. 缓存刷新流程

当你更新 Argon 主题、修改 CSS/JS/图片后,需要刷新缓存。


10.1 EdgeOne 刷新

可以刷新目录:

https://static.example.com/wp-content/themes/argon/

或刷新具体文件:

https://static.example.com/wp-content/themes/argon/style.css

10.2 WordPress 缓存刷新

如果你使用了缓存插件,例如:

  • WP Rocket;
  • LiteSpeed Cache;
  • W3 Total Cache;
  • Autoptimize;

需要同时清理插件缓存。


10.3 浏览器缓存刷新

用户浏览器可能也缓存了旧文件。

测试时可以:

Ctrl + F5

或使用无痕窗口访问。


10.4 推荐使用版本号

建议 CSS/JS 使用版本号:

style.css?ver=1.2.3
app.js?ver=1.2.3

更新文件后变更版本号,可以减少缓存不更新问题。


11. 常见问题排查

11.1 访问 static 域名返回 404

可能原因:

  1. 回源 Host 没配置为主站域名;
  2. 源站路径不存在;
  3. WordPress 或 Nginx 禁止访问该路径;
  4. EdgeOne 回源地址写错;
  5. 源站有防盗链或安全插件拦截。

排查:

curl -I https://www.example.com/wp-content/themes/argon/style.css
curl -I https://static.example.com/wp-content/themes/argon/style.css

如果源站能访问但 CDN 不能访问,重点检查:

回源 Host
源站协议
源站防火墙
EdgeOne 回源配置

11.2 出现字体跨域错误

报错类似:

Access to font at 'https://static.example.com/xxx.woff2'
from origin 'https://www.example.com'
has been blocked by CORS policy

解决:

在 EdgeOne 添加节点响应头:

Access-Control-Allow-Origin: *

并刷新缓存。


11.3 页面仍然从 www 加载资源

原因:

EdgeOne 只负责加速 static.example.com,不会自动修改 WordPress HTML。

解决:

  • 配置 CDN 插件;
  • 修改主题资源 URL;
  • 使用过滤器替换;
  • 清理 WordPress 页面缓存。

11.4 CSS 修改后不生效

可能原因:

  1. EdgeOne 缓存未刷新;
  2. 浏览器缓存未刷新;
  3. WordPress 缓存插件未刷新;
  4. CSS 文件版本号没变;
  5. 页面 HTML 仍引用旧文件。

解决:

  • 刷新 EdgeOne URL;
  • 清理 WordPress 缓存;
  • 修改 ver 参数;
  • 浏览器强刷。

11.5 HTTPS 混合内容

报错类似:

Mixed Content

原因:

主站是 HTTPS,但资源使用 HTTP:

http://static.example.com/...

解决:

统一使用:

https://static.example.com/...

并开启 EdgeOne HTTPS。


11.6 源站被回源打满

如果缓存命中率低,可能仍有大量请求回源。

优化:

  1. 延长缓存 TTL;
  2. 忽略无意义查询参数;
  3. 对静态文件开启缓存;
  4. 避免频繁刷新全目录;
  5. 观察 EdgeOne 命中率。

12. 推荐配置清单

以下是推荐配置。

12.1 EdgeOne

配置项 推荐值
静态域名 static.example.com
源站 www.example.com
回源协议 HTTPS
回源 Host www.example.com
HTTPS 开启
HTTP/2 开启
HTTP/3 可选
压缩 Gzip/Brotli
缓存路径 /wp-content/themes/argon/*
节点缓存 TTL 7-30 天
浏览器缓存 TTL 1-7 天
CORS Access-Control-Allow-Origin: *
防盗链 可选
缓存刷新 更新主题后刷新

12.2 WordPress

配置项 推荐值
CDN 域名 https://static.example.com
替换范围 主题静态资源
后台资源 不建议替换
缓存插件 配置后清理缓存
CSS/JS 版本号 建议保留
图片资源 后续可单独优化

13. 安全建议

13.1 不缓存敏感路径

不要用静态域名访问或缓存:

/wp-admin/
/wp-login.php
/wp-json/
/xmlrpc.php

13.2 限制静态域名用途

静态域名建议只用于:

/wp-content/themes/argon/*
/wp-content/plugins/*
/wp-content/uploads/*

不要将登录、接口、后台绑定到静态域名使用。


13.3 防盗链谨慎开启

防盗链可以减少盗刷,但配置错误会导致资源无法加载。

建议先上线稳定后再启用。


14. 运维建议

14.1 更新主题后的操作流程

每次更新 Argon 主题后:

  1. 检查源站资源是否正常;
  2. 清理 WordPress 缓存;
  3. 刷新 EdgeOne 缓存;
  4. 浏览器无痕窗口测试;
  5. 检查控制台是否有 404/CORS/Mixed Content;
  6. 检查样式和 JS 是否正常。

14.2 建议监控指标

关注:

  • EdgeOne 请求量;
  • 缓存命中率;
  • 回源请求量;
  • 4xx 错误;
  • 5xx 错误;
  • 带宽用量;
  • 访问延迟;
  • CORS 错误;
  • 源站 CPU/带宽。

14.3 缓存命中率优化

如果命中率低,可以检查:

  • URL 是否带随机参数;
  • 查询参数是否影响缓存;
  • 缓存 TTL 是否太短;
  • 是否频繁刷新缓存;
  • 是否路径规则未命中;
  • 是否响应头禁止缓存。

15. 最终部署示例

假设:

主站:https://www.example.com
静态域名:https://static.example.com
主题目录:/wp-content/themes/argon/

EdgeOne 配置:

加速域名:static.example.com
源站地址:www.example.com
回源协议:HTTPS
回源 Host:www.example.com
缓存路径:/wp-content/themes/argon/*
节点缓存:30 天
浏览器缓存:7 天
响应头:Access-Control-Allow-Origin: *
压缩:开启
HTTP/2:开启
HTTPS:开启

WordPress 替换:

https://www.example.com/wp-content/themes/argon/
替换为
https://static.example.com/wp-content/themes/argon/

最终资源访问:

https://static.example.com/wp-content/themes/argon/style.css
https://static.example.com/wp-content/themes/argon/assets/js/app.js
https://static.example.com/wp-content/themes/argon/assets/fonts/icon.woff2

16. 结论

EdgeOne 静态域名 → 回源 WordPress 是一种简单、低维护成本的 WordPress 静态资源加速方案。

它的核心优势是:

  • 不需要迁移文件;
  • 不需要 OSS/COS;
  • 主题更新方便;
  • 静态资源可被 EdgeOne 缓存;
  • 能明显降低源站静态资源压力;
  • 适合 Argon 等主题的 CSS、JS、字体、图片加速。

对于你的当前场景,推荐继续使用该方案,并重点做好:

  1. 回源 Host;
  2. HTTPS;
  3. 缓存规则;
  4. CORS 响应头;
  5. WordPress 静态资源 URL 替换;
  6. 更新后的缓存刷新。
文末附加内容
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇