
smallpath Blog图片优化流水线七牛上传WebP自动转换省流量只需3行配置【免费下载链接】blog前后端分离服务端渲染的博客系统. 基于Vue2、Koa2、MongoDB、Redis项目地址: https://gitcode.com/gh_mirrors/blog205/blogsmallpath Blog 是一款基于 Vue2 Koa2 MongoDB Redis 的前后端分离、支持服务端渲染的博客系统。它的图片优化流水线让写作变得极其轻松在后台拖拽上传图片七牛对象存储会在上传的同时自动转换 WebP 格式并另存一份——你什么都不用管移动端读者打开文章时流量消耗直接减半。为什么博客需要 WebP 图片优化博客图片往往占据页面体积的 70% 以上。一张 500KB 的 PNG 截图转成 WebP 后通常只剩 100~150KB压缩率可达 60% 以上而肉眼几乎看不出差别。对使用 4G/5G 流量的移动端读者来说这意味着 单篇文章的加载流量大幅下降⚡ 首屏渲染更快跳出率更低 服务器带宽压力减小低成本托管也能轻松扛住流水线是如何工作的上传即转码全程自动smallpath Blog 的图片优化分为三步全部在后台自动完成第 1 步获取签名上传凭证。在后台 Markdown 编辑器中点击插入图片 → 上传图片前端会先向后端请求/admin/qiniu接口。服务端在 server/plugins/mountingRoute/qiniu.js 中用你的 AccessKey / SecretKey 签发一个临时 upToken并返回supportWebp标志是否已配置转码队列。第 2 步浏览器直传七牛。前端拿到 Token 后把图片直接上传到七牛存储节点文件自动带上日期前缀归档如20260823/143052_screenshot.png无需经过你自己的服务器中转速度更快。上传逻辑见 admin/src/components/containers/Markdown.vue。第 3 步转码队列自动转换 WebP。这是流水线的核心——只要配置了七牛多媒体处理队列上传请求就会附带imageMogr2/format/webp的持久化处理指令并自动将结果另存到webp/前缀路径下。也就是说你上传一张 PNG七牛会悄悄再给你生成一张 WebP。✅最快启用方法3 行配置搞定启用图片优化只需在 server/conf/config.js 中补充七牛相关字段后台启动时会校验配置// server/conf/config.js 中补充以下配置 qiniuAccessKey: 你的公钥, qiniuSecretKey: 你的私钥, qiniuBucketName: 你的存储桶名称, qiniuBucketHost: 你的外链域名, qiniuPipeline: 你的多媒体处理队列名称关键点只有一个把qiniuPipeline填成七牛控制台里的多媒体处理队列名称。该值非空时WebP 自动转换才生效留空则只保留直传功能。完整字段说明可参考 README.md 中的七牛设置部分服务端实现见 server/plugins/mountingRoute/qiniu.js。前台展示WebP 自动降级老浏览器也能看图片转成 WebP 后怎么保证不支持 WebP 的老浏览器也能正常显示smallpath Blog 在前台做了智能降级front/src/mixin/image.js 提供getValidImageUrl方法根据supportWebp标志决定展示 WebP 还是原图文章页与列表页front/src/components/Post.vue、front/src/components/BlogSummary.vue会在正文中自动把/webp/前缀替换回原图路径。整个过程对读者完全透明新设备看 WebP 省流量旧设备回退原图看个清楚。效果与注意事项对比项未启用 WebP启用流水线后单张博客图片体积约 400~800KB约 100~200KB上传方式手动传到图床编辑器内拖拽即传格式转换手动转、手动替换链接服务端自动完成旧浏览器兼容—自动降级为原图⚠️ 使用小贴士队列名称必须与七牛控制台完全一致这是最容易配错的地方后台提示获取七牛 Token 失败时优先检查server/conf/config.js的密钥是否填写正确WebP 副本与原图共存于同一存储桶原图随时可用转换零风险。只需 3 行配置一套上传 → 转码 → 智能展示的完整图片优化流水线就搭好了。对于希望读者打开更快、流量花得更少的博客主来说这是 smallpath Blog 里性价比最高的一个功能。【免费下载链接】blog前后端分离服务端渲染的博客系统. 基于Vue2、Koa2、MongoDB、Redis项目地址: https://gitcode.com/gh_mirrors/blog205/blog创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考