gpt4 book ai didi

c# - 停止 HSTS HTTPS 执行

转载 作者:太空宇宙 更新时间:2023-11-03 14:11:00 27 4
gpt4 key购买 nike

所以我将它放在我的 Global.asax.cs 中以使用 HSTS 强制执行 HTTPS

protected void Application_BeginRequest(Object sender, EventArgs e)
{
if (!Request.IsLocal && AppSettings.IsSSLEnforced)
{
switch (Request.Url.Scheme)
{
case "https":
Response.AddHeader("Strict-Transport-Security", "max-age=300");
break;
case "http":
var path = "https://" + Request.Url.Host + Request.Url.PathAndQuery;
Response.Status = "301 Moved Permanently";
Response.AddHeader("Location", path);
break;
}
}
}

现在,问题是这种强制执行是基于我的应用程序中的一个设置,该设置决定是否强制执行,当它设置为不强制执行时,它仍然在强制执行。我如何清除它并停止重定向?

我尝试添加一个我放入的其他内容

Response.AddHeader("Strict-Transport-Security", "max-age=0");

将 max-age 设置为 0 无效。我该如何删除它? max-age 似乎也不起作用(我正在使用 chrome),因为它已经超过 300 秒(5 分钟)

编辑:我现在尝试在 IE 中加载但它不执行重定向,我尝试进入 chrome 设置并删除条目但仍然没有。

最佳答案

一旦您将 HSTS header 发送到用户的浏览器,它将始终使用 https。它是按域指定的,并且可以选择加上子域。

一旦浏览器访问您的域并收到 HSTS header ,它将始终使用 https(强制执行)。现在您无法通过服务器响应取消强制执行。

因此,最好在 Web 应用程序防火墙 (WAF) 级别添加 HSTS 和重定向 header ,并且您域中的所有资源都可以通过 https 提供。

https://www.chromium.org/hsts/ https://blog.cloudflare.com/enforce-web-policy-with-hypertext-strict-transport-security-hsts/

关于c# - 停止 HSTS HTTPS 执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30510613/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com