0

我刚刚为 Visual Studio 2010 安装了 sp1,现在我正在使用 IIS Express 调试我的 asp.net 项目和网站。我知道我可以从项目的属性中启用 ssl。但我想弄清楚的是如何为几个页面启用和要求 SSL,例如Login.aspxRegister.aspx.

我相信在 IIS 中,我们可以从 IIS 管理器中执行此类操作,但是,除了系统托盘中的一个小图标外,似乎没有 IIS express 的管理区域。我没有使用 webmatrix 安装 IIS express,而是作为一个独立的应用程序安装。

4

2 回答 2

1

您可以使用Url Rewriting来做到这一点。如果您在 IIS 中为您的站点安装了证书,但您为 https 和 http 配置了标头,则可以通过任一方法访问该站点的页面。您可以使用 url 重写来强制对给定页面的所有请求为 https,如下所示:

<rewrite >
  <rules>
    <clear />
    <rule name="Redirect Login Page" stopProcessing="true">
      <match url="^Login.aspx(.*)" />
      <conditions logicalGrouping="MatchAll" trackAllCaptures="false">
        <add input="{HTTPS}" pattern="^OFF$" />
      </conditions>
      <action type="Redirect" url="https://{HTTP_HOST}/Login.aspx{R:1}" />
    </rule>

我已经在一些应用程序中使用过它并且效果很好。

于 2012-04-11T14:32:00.810 回答
1

您也可以以编程方式进行操作。请参阅Request.IsSecureConnection和(仅)根据需要重定向。

有点跑题了,但是当你有一个前端设备/集中器时,上面确实有一些警告。

于 2012-04-11T14:47:00.480 回答