现在Visual Studio 2012 已经使用IIS Express 作为开发时使用的Http Server.
最近需要使用SSL, 花时间研究了一下。 通过以下步骤可以开启 IIS Express 的 SSL
1, 将 IIS Express 自带的 localhost 证书从 Certificate(local computer) - Personal 目录 移动到 Certificate(local computer)- Trusted Root Certificaiton Authorities 目录
2, 打开位于 C:\Users\[Username]\Documents\IISExpress 目录下的 IIS Express 配置文件。 打开 applicationhost.config 文件。
找到你的Web项目所在的 Site 节点
<sites>
<site name="Web" id="2">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="D:\XXXXXX\Web" />
</application>
<bindings>
<binding protocol="https" bindingInformation="*:44301:localhost" />
</bindings>
</site>
修改 binding 将 protocol 修改为 https, 将 bingdingInformation修改为 *:44301:localhost.
这里的端口为什么是 44301,其实IIS Express 的 SSL 的端口默认是从 44300 开始的。可以自己修改最后两位。 为什么不能使用443呢? 当然可以用。但要做其他额外的配置,比较复杂。所以建议还是直接用443XX的端口。