在特定页面上启用SSL。 IIS Express和VS 2010

时间:2012-04-11 11:49:33

标签: asp.net visual-studio-2010 iis iis-express

我刚刚为visual studio 2010安装了sp1,现在我正在用IIS Express调试我的asp.net项目和网站。我知道我可以从项目的属性中启用ssl。但我想弄清楚如何为Login.aspxRegister.aspx这样的少数网页启用和要求SSL。

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

2 个答案:

答案 0 :(得分:1)

您可以使用Url Rewriting执行此操作。如果您在IIS中为站点安装了证书,但是您为https和http配置了标头,则可以通过任一方法访问该站点的页面。您可以使用网址重写来强制对给定网页的所有请求都为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>

我在一些应用程序中使用过它,效果很好。

答案 1 :(得分:1)

您也可以通过编程方式执行操作。如有必要,请参阅Request.IsSecureConnection和(仅)重定向。

有点偏离主题,但如果你有front end device/concentrator,上面的确有一些警告。