Netlify重定向到www在gatsby网站上不起作用

时间:2019-03-05 10:03:27

标签: redirect gatsby netlify

我正在尝试将没有www的所有URL重定向到www,我的netlify.toml文件中有以下规则

[[redirects]]
  from = "/"
  to = "/es"
  status = 302
  force = false
  conditions = {Country = ["es"], Language = ["es","EU-es"]}

[[redirects]]
  from = "https://example.com/*"
  to = "https://www.example.com/:splat"
  status = 301
  force = true

第一个规则有效,但是第二个规则(将所有不带www的请求重定向到www的通用规则)不起作用。我正在将gatsby v1与打字稿一起使用。

1 个答案:

答案 0 :(得分:0)

如果您将站点的主要自定义域设置为www.example.com,并且您具有有效的主机名SSL证书,则Netpify会自动执行此重定向。如果example.comwww.example.com是辅助主机名(称为域别名:https://www.netlify.com/docs/custom-domains/#domain-aliases),则您可能需要/需要此重定向。

通常,人们会将这类重定向放置在其他位置,例如您的302 /语言重定向,使其首先出现,但是如果它不起作用,那么这可能不是(唯一的)问题

注意:在没有站点强制ssl的情况下,这只会捕获字面https://example.com(/ *的请求,而不会捕获对http://example.com的请求(永远不会这样-Netlify尝试强制自动访问所有网站)。

如果您发现它不起作用,并且满足先决条件: -使用这些主机名配置的netlify站点 -netlify站点上的SSL证书,支持这些主机名 ...那么有可能我们要么没有正确处理它,以致它就位,要么系统中的其他错误。您应该联系Netlify's helpdesk进行调查,因为重定向会被处理的信息不会显示在任何地方,并且试图了解通过反复试验处理的内容并不是一个非常出色的过程:)