网站字体本地化,减少外部资源加载延迟:网站字体本地化

网站打开时字体加载慢,或者文字先以默认字体显示再突然跳变,多半是因为 CSS 里引用了 Google Fonts 这类外部字体服务。
把这些字体文件下载到自己的服务器,用 @font-face 本地调用,就能减少一个外部域名请求,页面渲染会更稳定。
下面从确认字体来源开始,一步步完成字体本地化。

先确认当前字体是从哪里加载的

打开浏览器开发者工具,按 F12,切到 Network 面板,刷新页面,在筛选框输入 fontwoff
如果看到请求域名是 fonts.googleapis.comfonts.gstatic.com,说明字体确实来自外部。

同时查看网页源代码里是否存在类似这样的引用:

或者 CSS 文件里有 @import url('https://fonts.googleapis.com/...')
把这些地址记下来,后面要用到对应的字体文件。

下载字体文件并上传到服务器

在浏览器中直接打开那个 Google Fonts 的 CSS 链接,会看到里面定义了 @font-face,其中 src 指向 .woff2.woff 文件。
把这些字体文件下载到本地。

以宝塔面板为例,上传路径可以放在网站根目录下的 fonts 文件夹:

/www/wwwroot/你的域名/fonts/roboto-regular.woff2

如果用命令行,可以先创建目录再上传:

mkdir -p /www/wwwroot/你的域名/fonts
# 然后用 scp 或宝塔文件管理上传字体文件到该目录

上传完成后,在浏览器访问 https://你的域名/fonts/roboto-regular.woff2,能正常下载就说明文件可访问。

修改 CSS,改用本地 @font-face

删除原来的外部字体 @import,在你自己的 CSS 文件里加入本地定义。
示例:

@font-face {
  font-family: 'Roboto Local';
  src: url('/fonts/roboto-regular.woff2') format('woff2'),
       url('/fonts/roboto-regular.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

body {
  font-family: 'Roboto Local', Arial, sans-serif;
}

font-display: swap 的作用是先用系统字体显示文字,等本地字体加载完再替换,避免文字长时间空白。
路径 /fonts/... 是相对于网站根目录的绝对路径,实际使用时按你的目录结构调整。

配置服务器缓存,让字体只下载一次

字体文件体积不小,建议在 Nginx 里给字体设置长期缓存。
在网站配置文件中加入:

location ~* \.(woff2?|ttf|otf|eot)$ {
    expires 30d;
    add_header Cache-Control "public, immutable";
}

保存后重载 Nginx:

nginx -t && nginx -s reload

这样浏览器第一次下载后会缓存 30 天,后续访问不再重复请求。

容易踩坑的地方

字体文件名不要用中文或空格,否则部分服务器或浏览器解析路径会出错,建议用英文和短横线。

跨域问题:如果字体文件和网站不同域,需要在 Nginx 里加 Access-Control-Allow-Origin 头。
本地化后同域引用一般不会触发。

版权风险:不是所有字体都允许免费商用。
下载前确认字体授权,尤其是企业网站,建议使用开源字体或已购买授权的字体。

只保留需要的字重:一个字体家族可能有多个字重文件,全部加载会拖慢速度,按页面实际用到的字重保留即可。

检查字体本地化是否生效

再次打开开发者工具 Network 面板,刷新页面,筛选 font
此时字体请求的域名应该变成你自己的域名,不再出现 fonts.gstatic.com
查看请求状态是否为 200304(缓存命中),响应头里能看到 Cache-Control 和过期时间。

用 Lighthouse 或 PageSpeed Insights 跑一次,对比优化前后“减少第三方代码影响”和“字体显示”相关的评分变化。
只要外部字体请求消失、页面文字不再闪烁,字体本地化就算完成。

如果后续更换字体,重复下载、上传、改 CSS 这三步即可,不需要改动服务器其他配置。

分享到:
上一篇
网站预加载配置,提升页面打开速度
下一篇
网站图片WebP格式转换,大幅压缩体积
1
系统公告

泽御云中秋国庆双节活动上线:新购8折,拼团3.99元起

尊敬的用户:
泽御云“月满中秋·礼贺国庆”双节活动现已开启,活动时间为2026年9月23日至10月10日。 活动期间可享以下福利:
1. 常规云服务器新购使用优惠码“泽御中秋国庆同乐”,符合条件的订单享8折优惠。
2. 香港精品云服务器5人拼团低至3.99元,部分4核4G套餐3人拼团年付388元,续费同价。
3. 新用户购买年付云服务器,符合活动规则可赠送2个月使用时长。
4. 老用户续费季度赠15天,续费年度赠2个月;活动期间升级配置免收配置迁移手续费。
5. 推荐好友成功下单,符合条件的推荐人可获赠7天服务器使用时长。
6. 活动期间享宕机补偿标准翻倍、简单网站迁移协助及技术工单优先处理权益。
温馨提示:优惠码不适用于拼团套餐、活动轻量产品、年付订单及续费订单;拼团套餐为独立特价活动,不与赠时类福利叠加。赠送时长不可折现、退款或跨账户转移,具体规则以活动页面说明为准。
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意