DEV Community · Show DEV8/10 23:0047

用Go+Vite二进制替代Next.js微站且不损SEO

Replacing a Next.js Microsite with an Embedded Go + Vite Binary Without Losing SEO

阅读原文
作者将一个小型交互内容网站从Next.js运行时迁移到单个Go服务,以简化运维。该网站是一个确定性规划器,用户选择选项、比较序列、编辑并下载PNG或分享链接。迁移后,React负责交互状态和渲染,Go负责HTTP交付、配置、安全头和小型API端点。前端使用React 19和Vite构建,生产环境不运行Vite,而是由Go嵌入构建产物。构建时预渲染所有可索引路由,生成完整HTML,包含标题、描述、规范URL和Open Graph字段。Go服务器将配置的生产环境源替换到规范字段中,避免将暂存主机名烘焙到发布中。文章讨论了迁移的边界和权衡,强调部署产物为一个二进制文件,Node仅作为构建工具链的一部分。