在http://到https:// redirect期间重定向循环

时间:2009-06-02 13:37:20

标签: c# ssl redirect https redirect-loop

我正在尝试强制在SSL下运行页面,所以我在page_load上实现了以下内容:

if (!Request.IsLocal && !Request.IsSecureConnection)
        {
            Response.Redirect(Helper.GetInstance().SSLBaseURL() + ScriptName());
        }

出于某种原因,这将以循环结束。今天早些时候,我检查了Request.Uri.Scheme,它正在解析为“http”,虽然我显然与https://www.domain.com/pagename.aspx有关。

您有任何理由可以想到为什么此页面无法正确检测到我们是在https下运行吗?

1 个答案:

答案 0 :(得分:1)

我会在网络服务器端处理这个问题。如果您正在运行IIS,它并不是那么简单,但您可以启用强制SSL选项并为您的403; 4(我认为这是SSL所需错误)实现重定向到https的自定义错误页面。