Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 2015 Visual Studio 2015/IISExpress更改SSL端口_Visual Studio 2015_Iis Express - Fatal编程技术网

Visual studio 2015 Visual Studio 2015/IISExpress更改SSL端口

Visual studio 2015 Visual Studio 2015/IISExpress更改SSL端口,visual-studio-2015,iis-express,Visual Studio 2015,Iis Express,我有两个项目,一个Web API和一个客户端angularJS项目(使用空项目模板创建)。我的客户要求我强制使用SSL,因此我为Web API创建了一个filterAttribute。 无论如何,我将这两个项目都更改为启用SSL。问题是,两个项目都将其SSL URL显示为,这显然不起作用 因此,我决定更改applicationhost.config文件。 对于Visual Studio 2015,它似乎位于.vs文件夹中。当我在其中更改它时,如果我打开我的项目,它将覆盖它并将其放回44300 我

我有两个项目,一个Web API和一个客户端angularJS项目(使用空项目模板创建)。我的客户要求我强制使用SSL,因此我为Web API创建了一个filterAttribute。 无论如何,我将这两个项目都更改为启用SSL。问题是,两个项目都将其SSL URL显示为,这显然不起作用

因此,我决定更改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值
  • 我还需要确保applicationhost.config中包含https绑定
  • .csproj

    true
    44301
    
    applicationhost.config

    
    
    更新:

    文件.csproj.user也具有SSL端口配置,为了避免覆盖applicationhost.config文件中的SSL端口号,还应更新.csproj.user

    true
    44301
    

    对于Asp.Net Core,请参阅“/Properties/launchSettings.json”文件。

    对于vs2015,我在解决方案的.vs\文件夹下找到了具有正确内容的文件applicationhost.config。

    您可以下载适用于IIS Express的Jexus Manager进行更改。.vs中的文件不是要更改的文件。我将给出一个快照,以防有人登陆这里寻找AspNet 5项目,Visual Studio 2015(更新1)使用的常规端口和SSL端口被托管到每个项目的。\Properties\launchSettings.json文件中。“这似乎在.vs文件夹中”此注释帮助我解决了thx,我在错误的文件夹中查找,因此在%userprofile%\Documents\IISExpress\config中查找的applicationhost.config错误。我发现修改.csproj文件就足够了。VS似乎使用我的项目当前配置重写了applicationhost.config。我将对此进行测试,因为我从未找到解决方案:)@Dani,您必须从文件资源管理器查看该文件。Visual studio默认情况下不会显示该文件。我更改了此设置,但我在VS中的值仍被旧的端口号覆盖。我认为“标准”IIS Express功能只允许44300到44399的SSL端口。我看到过一些帖子,描述了如何使IIS Express在该范围之外工作,但对于我来说,保持在这100个地址内并没有什么大不了的。如果其他人有这个isuse,我也在那里找到了该文件,但对它的更改被忽略了。如果我在下一次项目中更改端口,我希望它会创建一个全新的块,并忽略我所做的一切。真正的MVP!不知道为什么“applicationhost.config”会有一个条目,但我的条目只使用了“launchSettings.json”中的值,并通过搜索文件夹找到了这个条目。只需在解决方案文件夹中搜索当前映射的端口号,即可找到要设置新端口号必须修改的文件。哇。哇。这就是我们需要的答案。此外,如果您想使用SSL,请不要将其与IISExpress一起使用,请使用“Project”并将应用程序url置于
    https://localhost:443;http://localhost:80
    但如果您使用的是IISExpress,SSL端口似乎必须在44300到44399之间。如果您选择了超出此范围的内容,您将获得“无法访问此网站”或类似的空白页。
    <UseIISExpress>true</UseIISExpress>
    <IISExpressSSLPort>44301</IISExpressSSLPort>
    
    <bindings>
       <binding protocol="http" bindingInformation="*:58001:localhost" />
       <binding protocol="https" bindingInformation="*:44301:localhost" />
    </bindings>
    
    <UseIISExpress>true</UseIISExpress>
    <IISExpressSSLPort>44301</IISExpressSSLPort>