IIS:https://example.com在表单提交后切换到http://example.com:443

时间:2010-03-28 07:12:46

标签: .net iis iis-7 iis-6

我的.net 3.5网站已选中“要求SSL”选项。提交任何表单后,我收到一条消息“该页面包含安全和非安全项目”,如果我点击“是”,它会将网址从“https://example.com/ ...”更改为“http://example.com:433/ .. “。有谁知道可能是什么问题?

编辑:只有在我提交回发时才会发生这种情况。如果我手动输入URL,一切正常。

3 个答案:

答案 0 :(得分:1)

当您通过SSL(使用https协议)获取部分页面时,通常会发生这种情况,其中一些来自常规HTTP协议(很可能是图像或脚本或css文件)。

浏览并检查您使用绝对路径引用的文件,并将其更改为相对。

寻找这样的事情:

<img source="http://somesite.com/myimage.png" />

此图片将通过HTTP不安全地传递,因此会在您的页面中显示警告。

答案 1 :(得分:0)

您的SSL证书是否已安装且有效? 它是否发生在多个客户端?

答案 2 :(得分:0)

抱歉,这不是IIS的问题。它是代码中的重定向:

UriBuilder url = new UriBuilder();
if (Request.Url.Port != 80)
{
    url.Port = Request.Url.Port;
}

我将其替换为:

UriBuilder url = new UriBuilder(Request.Url);

现在一切都很好。谢谢。