强制对 IIS 6 进行 SSL

强制对 IIS 6 进行 SSL

在 IIS 6 上强制将 HTTP 请求转换为 HTTPS 请求的最佳方法是什么?例如,我有一个目录和一个整个站点,需要在两个不同的服务器上强制使用 HTTPS。实现此目的的最佳或首选方法是什么?这需要将 HTTP 上的请求重定向到 HTTPS。我当时正在考虑类似于 Linux 世界中的 mod_rewrite 的方法。

请注意,我已经安装并运行证书。

答案1

有时我很难理解你到底在问什么,但我认为这就是你想要的:

在 IIS 管理器中右键单击有问题的网站,单击“目录安全”选项卡,单击“安全通信”部分下的“编辑”按钮,选中(启用)“需要安全通道 (SSL)”复选框。

答案2

一种方法是将其包含在您的global.asax.cs中。

protected void Application_BeginRequest(object sender, EventArgs e)
{
    if (!Request.IsSecureConnection)
    {
        Response.Redirect("https://" + Request.ServerVariables["HTTP_HOST"] + HttpContext.Current.Request.RawUrl);
    }
}

看:

https://stackoverflow.com/questions/47089/best-way-in-asp-net-to-force-https-for-an-entire-site/47095#47095

相关内容