我想将所有博客文章从当前路径/blog-post-slug
转移到新的子目录/blog/blog-post-slug
。
当前,我在gatsby-node文件中创建所有博客文章页面,而我只需要添加前缀即可创建新路线。但是,以前的所有博客文章及其反向链接均无效。这就是为什么我想将旧帖子重定向到新帖子。
如果有帮助,则该博客已部署在Netlify。
盖茨比(Gatsby)中有一种方法可以匹配旧路径并将其重定向到新路径?
答案 0 :(得分:0)
通过在createRedirect
和这两个插件gatsby-plugin-meta-redirect和gatsby-plugin-netlify中使用gatsby-node
操作解决了这个问题。
我在gatsby-node文件中添加了以下代码:
const oldPath = "/random-slug/";
createRedirect({
fromPath: oldPath,
toPath: "/blog" + oldPath,
isPermanent: true,
})
运行gatsby build
命令后,检查您的公用文件夹。应该已经生成了_redirects文件,其中包含所有所需的重定向。
您可以运行gatsby serve
来确定其是否正常运行!