我的 Web 应用程序已打开并接受和GCP
上的请求。我只想强制执行连接,而不会对用户体验造成影响。http
https
https
如果我删除,http
那么我担心用户输入http://mywebapp.com
会得到404
。正确的方法应该是同时接受和的请求http
并https
重定向http
请求(303
),以便客户端使用再次发送请求https
?
- 上述做法可行吗?
- 这不会增加我的流量成本吗(
gcp
由于重定向/重复请求) - 还有其他更好的方法来实现我的目标吗?
答案1
您设置了 HTTP 和 HTTPS 侦听器。您将 HTTP 侦听器配置为使用 301 永久重定向来回答客户端。您将 HTTPS 侦听器设置为发送 HSTS 标头,以使符合标准的客户端将来只尝试 HTTPS 连接。每个客户端只会尝试一次 HTTP 侦听器,然后使用 HTTPS 侦听器,直到他们忘记您的服务或 HSTS 生命周期用完而未续订。