mobile wallpaper 1mobile wallpaper 2mobile wallpaper 3mobile wallpaper 4
1276 字
3 分钟
2026年05月12日 | Astro博客真香定律:那些部署时踩过的人才懂的坑
2026-05-12

Astro博客真香定律:那些部署时踩过的人才懂的坑#

行了行了,都给哀家坐好。今天不聊宫斗,聊聊技术——哀家前阵子折腾Astro博客部署,被那几个坑气得差点把茶盏砸了。说好的“下一代框架”“火箭速度”呢?呵,你们就知道吹,真踩上去才知道什么叫脚疼。

本宫今天就把那些部署时踩烂的坑给你们捋一遍,省得你们日后哭着来问哀家。记好了,哀家只说一遍。


一、Node版本——这玩意儿坑死人不偿命

哀家第一次部署的时候,Build直接报错,报得莫名其妙。查了半天,发现是Node版本的问题——项目跑的是20.x,本宫服务器上装的是18.x。你说你一个框架,用个新版本语法就新版本语法呗,非得搞得跟选妃似的,版本不对连门都不让进。

解决方案?简单到本宫想笑:.nvmrc文件安排上,写明版本号,然后用nvm use切过去。这操作三秒钟,你们要是还能踩坑,哀家只能怀疑你们脑子是不是被门夹了。


二、依赖安装——npm还是pnpm这是个问题

依赖这事儿吧,哀家发现很多人连装都不会装。上来就npm install,也不管node_modules里塞了多少乱七八糟的东西。yarn也行,pnpm更香,但你们得认准一个用,别今天npm明天yarn后天pnpm,搞得项目跟精神分裂似的。

还有个骚操作——npm ci。这命令比npm install靠谱多了,直接按锁文件装,不会有版本漂移。本宫建议你们把CI/CD流水线里全换成npm ci,省得哪天依赖版本悄悄升级了,你们还以为自己部署成功了呢。


三、路径问题——相对还是绝对,傻傻分不清楚

Astro生成的静态文件,路径问题能坑死一堆人。本宫就见过有人本地跑得好好的,一部署上去,CSS全404,JS全报错。啥原因?路径写死了。

记住:资源路径用相对路径,或者用base配置。别手贱写绝对路径,除非你们想每次换域名都得改一遍代码。astro.config.mjs里那个base选项,给它设置好,省心。


四、部署平台——Vercel还是Netlify,你们纠结个啥

哀家跟你们说,这俩平台都香,但香法不一样。Vercel适合前端项目,配置简单到本宫都想给它磕一个;Netlify功能更全,但配置稍微复杂点。

唯一要叮嘱你们的是:别把这两个平台的配置文件搞混了。Vercel用vercel.json,Netlify用netlify.toml,名字都不一样,你们要是混着用,哀家只能祝你们好运。

还有,国内访问这两位大爷有点慢,你们要是面向国内用户,老老实实用国内的平台,别崇洋媚外。


五、构建缓存——这东西不清理能把你坑哭

这是哀家踩过最恶心的坑。代码明明更新了,部署上去一看,哎呀,怎么还是老样子?刷新没用,清浏览器缓存没用,你以为是代码问题,其实是构建缓存作祟。

解决方法:每次部署前,把CI/CD里的缓存清理一下。平台不同操作不同,但逻辑都一样——别让旧的缓存污染新的构建。本宫被这坑坑了三回才长记性,你们最好一遍就记住。


六、Git hooks——这玩意儿别偷懒

你们是不是经常本地能跑,部署上去就挂?哀家告诉你们,十有八九是Git hooks没配好。Astro有些命令需要在提交前跑,比如类型检查、格式校验。你们要是偷懒省略了这些环节,到了生产环境就是灾难。

解决方案:package.json里配好huskylint-staged,每次提交自动跑检查。这步偷懒的,后面都得还。


行吧,今天就叨叨这么多。哀家知道你们中有人肯定要问“媚娘,Astro到底香不香”——香,真的香,但香得有代价。那些坑踩过去了就是坦途,踩不过去就是粪坑。你们自己掂量着办。

最后说一句:技术这东西,看十遍不如踩一遍。踩完了再来看这篇文章,你们会发现本宫说得真他妈对。走了,有问题别憋着,评论区砸过来,本宫有空就回。

分享

如果这篇文章对你有帮助,欢迎分享给更多人!

2026年05月12日 | Astro博客真香定律:那些部署时踩过的人才懂的坑
https://www.yunio.cn/posts/2026-05-12-astro博客真香定律那些部署时踩过的人才懂的坑/
作者
媚娘
发布于
2026-05-12
许可协议
CC BY-NC-SA 4.0

部分信息可能已经过时

目录