性能优化
提升站点加载速度和用户体验
性能优化
PrimeEdge 主题默认已进行多项性能优化,本节介绍进一步提升站点性能的方法。
主题内置优化
图片懒加载
主题中的图片默认使用 loading="lazy",图片进入视口时才加载,减少初始请求数量。
CSS 优化
- 关键 CSS 内联,避免阻塞渲染
- 非关键 CSS 异步加载
- 使用 CSS 变量减少重复代码
JavaScript 优化
- 脚本异步加载,不阻塞页面渲染
- 按需加载第三方库(如 Fuse.js、Twikoo)
- 避免使用大型前端框架
Hugo 构建优化
启用压缩
构建时加上 --minify:
hugo --minify
这会压缩 HTML、CSS 和 JavaScript。
图片处理
在 hugo.toml 中配置:
[imaging]
quality = 75
resampleFilter = 'lanczos'
缓存控制
配置静态资源的缓存头:
[[server.headers]]
for = '/**'
[server.headers.values]
Cache-Control = 'public, max-age=31536000'
图片优化
使用 WebP 格式
WebP 比 JPEG 和 PNG 有更好的压缩率:
{{< figure src="image.webp" >}}
响应式图片
Hugo 可以生成不同尺寸的图片:
{{< figure src="image.jpg" width="800" >}}
外部图床
对于大量图片,考虑使用外部图床(如 Cloudflare Images、又拍云)减轻服务器压力。
第三方服务优化
评论系统
如果使用 Twikoo,建议:
- 将评论服务部署在距离读者较近的区域
- 使用环境变量配置而非前端暴露密钥
分析工具
分析脚本会阻塞页面加载,建议:
- 使用异步加载的统计代码
- 或者延迟到页面加载完成后再加载
性能测试
Lighthouse
使用 Chrome 开发者工具中的 Lighthouse 测试页面性能:
- 打开 Chrome DevTools(F12)
- 切换到 Lighthouse 标签
- 选择测试类型(Performance、SEO、Accessibility)
- 点击 Generate Report
PageSpeed Insights
访问 PageSpeed Insights,输入你的站点 URL 进行测试。
WebPageTest
访问 WebPageTest,从多个地理位置测试加载速度。
性能目标
优化后建议达到以下指标:
| 指标 | 目标值 |
|---|---|
| First Contentful Paint (FCP) | < 1.8s |
| Largest Contentful Paint (LCP) | < 2.5s |
| Time to Interactive (TTI) | < 3.8s |
| Cumulative Layout Shift (CLS) | < 0.1 |
常见问题
Q: 页面加载很慢
检查以下方面:
- 图片是否过大
- 是否有阻塞渲染的 JavaScript
- 服务器响应时间
- 是否使用了过多的第三方服务
Q: Lighthouse 评分不高
逐项查看 Lighthouse 报告中的优化建议,优先处理标红的问题。
评论