You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

托管在Netlify的Gatsby站点如何配置尾部斜杠301重定向规则

解决Gatsby+Netlify场景下带尾部斜杠URL无法301重定向的方案

方案1:Netlify原生规则配置(优先推荐,性能最高无需额外代码逻辑)

  1. 在Gatsby项目的static/目录下新建名为_redirects的文件,无文件后缀
  2. 在文件内写入如下规则:
/*/ /:splat 301!

规则说明:

  • /*/匹配所有尾部带斜杠的路径
  • :splat是Netlify通配符占位符,对应星号匹配到的路径内容
  • 301指定为永久重定向
  • !是强制生效标识,即使对应带斜杠的路径存在静态资源返回200,也会优先执行重定向规则
  1. 重新执行gatsby build构建并部署到Netlify即可生效

方案2:Gatsby插件配置(适合需要本地开发环境也同步生效的场景)

如果需要本地gatsby develop运行时也遵循重定向规则,可以配合Netlify官方Gatsby插件实现:

  1. 安装插件
npm install gatsby-plugin-netlify
  1. 修改gatsby-config.js配置,补充插件规则:
module.exports = {
  plugins: [
    // 你项目中已有的其他插件
    `gatsby-plugin-remove-trailing-slashes`,
    {
      resolve: `gatsby-plugin-netlify`,
      options: {
        redirects: [
          {
            from: `/*/`,
            to: `/:splat`,
            statusCode: 301,
            force: true
          }
        ]
      }
    }
  ]
}
  1. 重启本地开发服务或重新构建部署即可生效

生效验证

部署完成后可通过curl命令快速验证规则是否生效:

curl -I https://你的站点域名/测试路径/

返回结果中如果出现HTTP/2 301状态码,且Location头指向不带尾部斜杠的对应路径,即配置成功。

内容的提问来源于stack exchange,提问作者Harsh Makadia

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.09 09:30:00