静态托管也要讲重定向
站点重构后,旧 URL 不应直接 404。静态托管虽然没有应用服务,但多数平台提供重定向配置:Cloudflare Pages 用 _redirects,Vercel 用 vercel.json。
能配置 301 的路径,优先在平台层解决,搜索引擎和浏览器都能正确接收。
查询串是例外
/articles?category=javascript 这类查询串通常不参与静态文件匹配,平台重定向规则也未必支持。可行的做法是让列表页在客户端读取参数,然后 location.replace 到静态分类路由。
const category = new URLSearchParams(location.search).get('category');
if (category) location.replace(`/articles/category/${category}/`);
迁移映射表
带 ID 的旧文章链接需要映射表,构建时根据 legacyId 生成重定向规则。没有映射时至少重定向到列表页,避免用户落到错误页。
Meta 刷新只适合兜底,不能替代 301;它会影响体验,也不利于 SEO。重定向策略应该在内容迁移前确定,而不是上线后补。