Visual Studio 2015 / IISExpress 更改 SSL 端口
Visual Studio 2015 / IISExpress change SSL port
我有 2 个项目,一个 Web API 和一个客户端 angularJS 项目(使用空项目模板创建)。我的客户要求我强制使用 SSL,因此对于 Web API,我创建了一个 filterAttribute。
无论如何,我将这两个项目都更改为启用了 SSL。问题是,这两个项目都显示它们的 SSL URL 为 http://localhost:44300,这显然行不通。
所以我决定更改 applicationhost.config 文件。
对于 Visual Studio 2015,这似乎在 .vs 文件夹中。当我在那里更改它时,如果我打开我的项目,它会覆盖它并将其放回 44300.
我尝试创建一个虚拟目录(在我的 API 的属性中)并尝试覆盖应用程序根目录 URL。
都没有用。
有谁知道如何使用不同的 SSL 端口?
我有两个项目有同样的情况。 Visual Studio 2015 为 HTTP 正确分配了不同的 URL 端口号,但为 HTTPS 将两个项目映射到 44300。
AFAIK .vs\config 中的 applicationhost.config 似乎定义了 IIS Express 环境并告诉 IIS Express 在调用时如何表现。此信息不会反馈到 Visual Studio.
Visual Studio 似乎依赖于 .csproj 文件中的设置。这是您在 VS 中查看项目属性时看到的 SSL 端口值。
我能够通过调整两个项目来理清这两个项目:
- 更改我项目的 .csproj 文件中的 IISExpressSSLPort 值
- 我还需要确保 https 绑定包含在 applicationhost.config
.csproj
<UseIISExpress>true</UseIISExpress>
<IISExpressSSLPort>44301</IISExpressSSLPort>
applicationhost.config
<bindings>
<binding protocol="http" bindingInformation="*:58001:localhost" />
<binding protocol="https" bindingInformation="*:44301:localhost" />
</bindings>
更新:
文件.csproj.user也有SSL端口配置,避免覆盖applicationhost.config文件中的SSL端口号,.csproj.user 也应该更新。
<UseIISExpress>true</UseIISExpress>
<IISExpressSSLPort>44301</IISExpressSSLPort>
对于 Asp.Net 核心,请参阅“/Properties/launchSettings.json”文件。
对于 vs2015,我在我的解决方案中的 .vs\ 文件夹下找到了具有正确内容的文件 applicationhost.config。
右键单击您的项目,然后单击属性。
转到“调试”选项卡,然后单击“删除”。
我有 2 个项目,一个 Web API 和一个客户端 angularJS 项目(使用空项目模板创建)。我的客户要求我强制使用 SSL,因此对于 Web API,我创建了一个 filterAttribute。 无论如何,我将这两个项目都更改为启用了 SSL。问题是,这两个项目都显示它们的 SSL URL 为 http://localhost:44300,这显然行不通。
所以我决定更改 applicationhost.config 文件。 对于 Visual Studio 2015,这似乎在 .vs 文件夹中。当我在那里更改它时,如果我打开我的项目,它会覆盖它并将其放回 44300.
我尝试创建一个虚拟目录(在我的 API 的属性中)并尝试覆盖应用程序根目录 URL。 都没有用。
有谁知道如何使用不同的 SSL 端口?
我有两个项目有同样的情况。 Visual Studio 2015 为 HTTP 正确分配了不同的 URL 端口号,但为 HTTPS 将两个项目映射到 44300。
AFAIK .vs\config 中的 applicationhost.config 似乎定义了 IIS Express 环境并告诉 IIS Express 在调用时如何表现。此信息不会反馈到 Visual Studio.
Visual Studio 似乎依赖于 .csproj 文件中的设置。这是您在 VS 中查看项目属性时看到的 SSL 端口值。
我能够通过调整两个项目来理清这两个项目:
- 更改我项目的 .csproj 文件中的 IISExpressSSLPort 值
- 我还需要确保 https 绑定包含在 applicationhost.config
.csproj
<UseIISExpress>true</UseIISExpress> <IISExpressSSLPort>44301</IISExpressSSLPort>
applicationhost.config
<bindings> <binding protocol="http" bindingInformation="*:58001:localhost" /> <binding protocol="https" bindingInformation="*:44301:localhost" /> </bindings>
更新:
文件.csproj.user也有SSL端口配置,避免覆盖applicationhost.config文件中的SSL端口号,.csproj.user 也应该更新。
<UseIISExpress>true</UseIISExpress> <IISExpressSSLPort>44301</IISExpressSSLPort>
对于 Asp.Net 核心,请参阅“/Properties/launchSettings.json”文件。
对于 vs2015,我在我的解决方案中的 .vs\ 文件夹下找到了具有正确内容的文件 applicationhost.config。
右键单击您的项目,然后单击属性。
转到“调试”选项卡,然后单击“删除”。