IIS Express 10配置重置

时间:2015-09-06 22:09:01

标签: windows iis-express

使用 Windows 10 Visual Studio Enterprise 2015 IIS Express v10 出现了烦人的问题。

基本上我们的Web应用程序必须允许通过主机名进行远程连接。这很容易实现,我们只需将配置设置为下面的示例。

<site name="WebApplication" id="26">
    <application path="/" applicationPool="Clr4IntegratedAppPool">
        <virtualDirectory path="/" physicalPath="D:\WebApps\WebApplication" />
    </application>
    <bindings>
        <binding protocol="http" bindingInformation="*:44371:*" />
    </bindings>
</site>

此配置始终适用于以前的IIS Express实例。我面临的问题是每次重新启动工作站时,IIS都会创建另一个Web应用程序绑定实例,但是会再次默认为仅允许localhost,如下所示。 (注意它还会在名称上添加(1+))。

<site name="WebApplication(1)" id="28">
    <application path="/" applicationPool="Clr4IntegratedAppPool">
        <virtualDirectory path="/" physicalPath="D:\WebApps\WebApplication" />
    </application>
    <bindings>
        <binding protocol="http" bindingInformation="*:44371:localhost" />
    </bindings>
</site>

自从使用Visual Studio 2015和IIS Express 10以来,这种情况才刚刚开始。现在每天我只需重新调整每个Web应用程序(我们有大约5-6个)绑定以允许远程连接。

现在某处我看到选择Apply server settings to all users (store in project file)选项时出现此问题。但是,我的所有应用程序都确保这些都是unchecked

此外,我使用在快捷方式属性上选择的Administrator选项将Visual Studio作为Run As Administrator运行。我也禁用UAC(因为我讨厌这些提示)。

任何帮助都将不胜感激。

干杯,尼科。

1 个答案:

答案 0 :(得分:1)

我已经能够找到一个解决方案(似乎更像是一种解决方法),但无论如何要解决这个问题,我只能在初始站点配置中添加另一个绑定以允许远程连接。基本上添加

<binding protocol="http" bindingInformation="*:44371:*" />

到我现有的绑定,如下面的

<site name="WebApplication(1)" id="28">
    <application path="/" applicationPool="Clr4IntegratedAppPool">
        <virtualDirectory path="/" physicalPath="D:\WebApps\WebApplication" />
    </application>
    <bindings>
        <binding protocol="http" bindingInformation="*:44371:localhost" />
        <binding protocol="http" bindingInformation="*:44371:*" />
    </bindings>
</site>

能够解决这个问题。现在又感觉像是一个解决方案,因为实际上初始绑定是重复的。