asp.net 4.0 Web アプリケーションの特定のページに https を使用するという単純な要件があります。実装を確認するために、単純な asp.net 4.0 アプリを IIS 7 にデプロイしました。このアプリは、web.config フラグに基づいて https 経由で default.aspx ページを securepage.aspx にリダイレクトするようにコーディングされています。
protected void Page_Load(object sender, EventArgs e)
{
Uri requestUri = Page.Request.Url;
UriBuilder builder = new UriBuilder("https", requestUri.Host, requestUri.Port, "SecurePage.aspx");
string secureUrl = builder.Uri.ToString();
if (bool.Parse(ConfigurationManager.AppSettings["UseSecure"]))
{
Response.Redirect(secureUrl, true);
}
else
{
Response.Write(secureUrl);
}
}
しかし、このアプリを IIS 7 に展開して default.aspx ページを読み込むと、「Internet Explorer は Web ページを表示できません」と表示されます。しかし、config フラグをオフにすると、ページが正しく表示されます。アプリには、ポート 82 での http バインディングと、ポート 444 での https があります。
私たちが間違っているところを誰か教えてくれませんか。