2016-03-03 98 views
1

我正在排除故障原因IIS Express在移動我的ASP.NET核心項目後無法找到我的web.configASP.NET Core/5如何與IIS Express集成?

(HTTP錯誤500.19 - 無法讀取配置文件 - web.config文件)

我的研究發現,大多數人都改變對ApplicationHost.config文件。然而,當我打開我的ApplicationHost.config文件我只看到了什麼看起來是默認項(的WebSite1是不是我的項目名稱)

<sites> 
    <site name="WebSite1" id="1" serverAutoStart="true"> 
    <application path="/"> 
     <virtualDirectory path="/" physicalPath="%IIS_SITES_HOME%\WebSite1" /> 
    </application> 
    <bindings> 
     <binding protocol="http" bindingInformation=":8080:localhost" /> 
    </bindings> 
    </site> 
    <siteDefaults> 
    <logFile logFormat="W3C" directory="%IIS_USER_HOME%\Logs" /> 
    <traceFailedRequestsLogging directory="%IIS_USER_HOME%\TraceLogFiles" enabled="true" maxLogFileSizeKB="1024" /> 
    </siteDefaults> 
    <applicationDefaults applicationPool="Clr4IntegratedAppPool" /> 
    <virtualDirectoryDefaults allowSubDirConfig="true" /> 
</sites> 

我也明白,launchSettings.json文件有IIS Express使用的選項。舉例來說,我已經改變了我localhost port4444在我launchSettings.json文件:

"iisSettings": { 
    "windowsAuthentication": false, 
    "anonymousAuthentication": true, 
    "iisExpress": { 
    "applicationUrl": "http://localhost:4444", 
    "sslPort": 0 
    } 
}, 

之前,我提出我的項目,一切工作。另外,如果我選擇在Visual Studio(Kestrel,我認爲)中使用「web」運行我的項目,即使在移動之後,它也可以正常工作。

所以我的問題是如何和/或我的ASP.NET核心應用程序設置爲IIS Express的具體設置?我特別感興趣的是如何找到並更改我的項目的物理路徑,以便IIS Express可以找到我的web.config

+1

您是否將.vs隱藏文件夾移動到您的解決方案文件夾中? IIS Express配置文件位於該隱藏文件夾中。 –

回答

0

移動項目時,請確保複製根文件夾,以便包含文件夾內的所有文件。這聽起來像你剛剛複製了不包含所有內容的「src」文件夾。

如果您複製根文件夾並打開項目,它將運行良好。正如Lex Li上面提到的,有一個名爲.vs的隱藏文件夾,其中包含一個帶有applicationhost.config的配置文件夾。

enter image description here

+0

謝謝喬和Lex! hidden.vs文件夾是我理解的關鍵。路徑設置保持解決方案的關鍵。 – James