我已經通過VSTS向IIS發佈了多個.NET Core項目,並且沒有任何問題。但是,當我嘗試添加一個.NET標準項目時,我得到一個403.14 - 禁止的錯誤頁面。如果我嘗試輸入API的特定路由以獲得響應,則會引發404 - Not Found錯誤頁面。將.NET Standard發佈到IIS引發403.14錯誤
我正在使用.NET Framework 4.6.1,它也安裝在我的IIS 8.0服務器上。
有沒有什麼辦法可以解決這個問題或解決這個問題的方法?
我已經通過VSTS向IIS發佈了多個.NET Core項目,並且沒有任何問題。但是,當我嘗試添加一個.NET標準項目時,我得到一個403.14 - 禁止的錯誤頁面。如果我嘗試輸入API的特定路由以獲得響應,則會引發404 - Not Found錯誤頁面。將.NET Standard發佈到IIS引發403.14錯誤
我正在使用.NET Framework 4.6.1,它也安裝在我的IIS 8.0服務器上。
有沒有什麼辦法可以解決這個問題或解決這個問題的方法?
您應該檢查應用程序設置爲在IIS中使用的身份驗證。
如果您未使用身份驗證,請確保您啓用了匿名身份驗證。您還需要確保IIS用戶可以訪問您的應用程序所在的目錄。
如果要將您的域帳戶用作身份驗證,請確保Windows身份驗證已打開,並且您的帳戶使用可以訪問您的應用程序所在的目錄。另外,請確保您在代碼中的操作,控制器或應用程序級別應用身份驗證。
欲瞭解更多信息,可以閱讀MSDN信息here
.NET標準是不可執行的組件(類庫),使他們可以在不同的可執行組件之間共享。
將應用程序發佈到IIS時,需要使用可執行的DLL(.NET Framework或.NET Core),該應用程序可以使用.NET Standard進行排除。您可以從應用程序中引用.NET標準庫,但應用程序的入口點不能是.NET Standard。
但是,目前還不清楚爲什麼只有在發佈到IIS時才發現此問題,因爲以.NET標準爲目標的ASP.NET應用程序也不應該在本地運行。
那麼你會如何發佈一個使用.NET Framework的Web API? – aamb
應該沒有問題(是你在做什麼?你的問題似乎表明否則...)。 – NightOwl888
也許我說錯了。我正在嘗試發佈一個將.NET Framework用於IIS的Web應用程序。一個是Web API,另一個是NuGet服務器。謝謝你的幫助。 – aamb
我指着服務器上的錯誤位置。當我需要指向項目文件夾時,我正指向bin文件夾。謝謝您的幫助。
「.NET Standard 4.6.1」您的意思是.Net Framework 4.6.1 – phuzi
是的。我編輯了這個問題。謝謝 – aamb
可能重複的[HTTP錯誤403.14 - 禁止 - Web服務器配置爲不列出此目錄的內容](https://stackoverflow.com/questions/18981118/http-error-403-14-forbidden-the -web-server-is-configured-to-not-list-the-con) – codeMonkey