VS 2013 / IIS Express - 从localhost:port / myapp而不是localhost:port提供站点服务

时间:2014-09-17 08:03:49

标签: asp.net asp.net-mvc iis visual-studio-2013 iis-express

在prod我的网站(mvc5)托管在https://company.no/myApp/上,其中myApp是IIS上的应用程序。

在开发中,我的网站在http://localhost:54307/

上的IIS Express上托管

由于这会导致服务器相对路径出现问题,我还希望在http://localhost:54307/myApp上进行调试。

这是我尝试过的:

  • 将属性页中的项目URL设置为http://localhost:54307/myApp,然后单击“创建虚拟目录”
  • 使用或不使用myApp网址尝试覆盖应用程序根目录。
  • 尝试修改applicationhost.config。目前我的设置如下:

      <site name="MyApp.Web-Site" id="38">
            <application path="/" applicationPool="Clr4IntegratedAppPool">
                <virtualDirectory path="/" physicalPath="C:\Projects\OP\MyApp\Main\src\MyApp.Web" />
            </application>
            <application path="/MyApp" applicationPool="Clr4IntegratedAppPool">
                <virtualDirectory path="/" physicalPath="C:\Projects\OP\MyApp\Main\src\MyApp.Web" />
            </application>
            <bindings>
                <binding protocol="http" bindingInformation="*:54307:localhost" />
                <binding protocol="https" bindingInformation="*:44307:localhost" />
            </bindings>
        </site>
    

当我尝试从myApp文件夹打开页面时,我收到了以下错误:

 Module    IIS Web Core
 Notification      BeginRequest
 Handler       Not yet determined
 Error Code    0x800700b7
 Config Error      Cannot add duplicate collection entry of type 'add' with unique key attribute      'name' set to 'WSFederationAuthenticationModule'
 Config File       \\?\C:\Projects\OP\MyApp\Main\src\MyApp.Web\web.config
 Requested URL     http://localhost:54307/MyApp
 Physical Path     C:\Projects\OP\MyApp\Main\src\MyApp.Web

表示web.config加载了两次。知道我做错了吗?

感谢您的帮助

Larsi

1 个答案:

答案 0 :(得分:1)

我听说IIS Express会导致服务器相对路径出现问题。您可以通过几个不包含手动编辑applicationhost.config的步骤来设置它。我试图避免手动编辑applicationhost.config,它似乎导致比它解决的问题更多。我会从您的本地IIS中删除该网站以清除任何内容,然后执行以下步骤:

  • 右键单击您的Web项目并选择属性。
  • 点击&#34; Web&#34;菜单
  • 将下拉列表更改为本地IIS并输入您希望应用解析的URL,然后单击创建虚拟目录,保存文件并构建。
  • web tab
  • 您仍然可以在没有端口号的情况下进行调试,只要您在Web选项卡上选中了调试器选项,调试器就会连接到本地IIS实例中的这个新网站。
  • 打开您的本地IIS并进行运行应用程序所需的任何其他配置(身份验证,应用程序池等)。
  • 打开浏览器并导航至http://localhost/YourAppName
  • 因为就本地iis而言,这是一个网站,您可以随时在浏览器中点击它,而无需运行Visual Studio。