Netlify社区经常提出另一个问题。 “Netlify可以将流量从http重定向到https而不强制使用SSL(TLS)吗?”
获得证书后,您可以选中一个框以强制使用TLS。这将设置从http到https的重定向,并为所有请求添加严格传输安全标头。
在完成所有设置并且他们知道不会更改设置之前,用户不想强制使用SSL。
答案 0 :(得分:7)
当前,自2018年11月(自2018年7月起),Netlify上的所有新站点均为HTTPS ,默认情况下强制重定向已打开,而您无法将其关闭。< / p>
请参阅博客文章:
以及GitHub上的此问题:
即使对于旧站点,也无法使用关闭HTTPS或关闭重定向到HTTPS的选项:
答案 1 :(得分:5)
Netlify允许您强制使用TLS。建议不要强迫TLS&#39;直到您确定所有网址都使用https
在您确定所有网址都在前面使用“https://”之前,请不要选中“强制TLS”选项!
使用Netlify强制TLS后,他们将在页面响应标头中设置STS(严格传输安全)标头。我不会通过解释来you can read about it here。
最重要的是:
支持的浏览器收到此标头后,浏览器将阻止通过HTTP将任何通信发送到指定的域,而是通过HTTPS发送所有通信
请注意,Netlify的设置(使用强制TLS复选框)是让访问浏览器在 1年过去的访问日期强制执行此操作!因此,如果您在https上有任何失败,您的网站将会遇到一些问题,直到您能够解决它们为止。
您仍然希望您的网站在添加证书后始终提供https页面,但在测试或解决问题时不会强制使用。
使用已部署网站根目录的_redirects
文件(位于&#34;发布目录,index.html旁边)将流量重定向到https。
以下是文件
的示例 _redirects
# redirect netlify sitename to your sitename for SEO purposes,
# to avoid duplicate content. Do this for http and https
https://example.netlify.com/* https://www.example.com/:splat 301!
http://example.netlify.com/* http://www.example.com/:splat 301!
# also redirect http to https for your custom domain.
# Note that netlify automatically redirects to your custom domain from the bare domain (or vice versa), so you only need one rule here.
http://www.example.com/* https://www.example.com/:splat 301!
进行相同的重定向
netlify.toml
[[redirects]]
from = "https://example.netlify.com/*"
to = "https://www.example.com/:splat"
status = 301
force = true
[[redirects]]
from = "http://example.netlify.com/*"
to = "http://www.example.com/:splat"
status = 301
force = true
[[redirects]]
from = "http://www.example.com/*"
to = "https://www.example.com/:splat"
status = 301
force = true
<强> 注:的强>
www
子域(可选)www
作为自定义域名,以便通过 ANY DNS设置充分利用Netlify CDN。http
重定向到https