Asp.net
新的 Asp.Net MVC5 項目生成一個無限循環到登錄頁面
我正在使用 Visual Studio 2013 創建一個全新的項目,我選擇 Asp.Net MVC 和框架 4.5.1 項目已創建,然後,我只做 F5 以啟動預設網頁。不幸的是,它會產生一個重定向到登錄頁面的重定向,該頁面也重定向到登錄頁面。這是我在瀏覽器中的網址的簡短版本:
http://localhost:5285/Account/Login?ReturnUrl=%2FAccount%2FLogin%3FReturnUrl%3D%252FAccount%252FLogin%253FReturnUrl%253D%25252FAccount%25252FLogin%25253FReturnUrl%25253D%2525252FAccount%2525252FLogin%2525253FReturnUrl%2525253D%252525252FAccount%252525252FLogin%252525253FReturnUrl%252525253D%25252525252FAccount%25252525252FLogin%25252525253FReturnUrl%25252525253D%2525252525252FAccount%2525252525252FLogin%2525252525253FReturnUrl%2525252525253D%252525252525我在事件查看器中沒有任何錯誤。但在螢幕上我看到:
“HTTP 錯誤 404.15 - 未找到請求過濾模組配置為拒絕查詢字元串過長的請求。”
該網站以 IIS Express 中的預設設置執行。我該如何解決這個問題?我猜我的 Visual Studio 2013 有問題?
編輯
如果我創建一個全新的網站並將其託管在 IIS 中,它會起作用。但是,如果我創建一個新網站(不修改任何內容)並點擊播放(預設情況下啟動 IIS Express),它不會。
編輯 2
我已經刪除了 Documents\IISExpress\config\applicationhost.config 中的每個網站。我已經重新編譯了所有內容,它創建了這個條目:
<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>我仍然收到 IIS Express 的錯誤,而不是 IIS。
請注意,這可能是有害的建議,直接修改應用程序主機配置文件很少是一個好主意,通常有工具可以安全地為您執行此操作(例如,從 Visual Studio 中)。在繼續之前,請確保在您的 IIS Express 被丟棄時創建此文件的備份副本。
為了解決這個問題,我採用了位於此處的預設 IIS 配置文件:
C:\Windows\System32\inetsrv\config\applicationHost.config到我的文件
%userprofile%\documents\iisexpress\config\applicationhost.config它奏效了。
這是因為我設置了一些 Windows 身份驗證,而不是匿名帳戶。
在 Visual Studio 中突出顯示項目
打開右側的“屬性”面板(或按 F4)
將“Windows 身份驗證”設置為“禁用”
將“匿名身份驗證”設置為“啟用”