我正在使用 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 Error 404.15 - Not Found The request filtering module is configured to deny a request where the query string is too long."
网站正在使用 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 中突出显示该项目
打开右侧的“属性”面板(或按 F4)
将“Windows 身份验证”设置为“禁用”
将“匿名身份验证”设置为“启用”
关于asp.net - 新的 Asp.Net MVC5 项目产生登录页面的无限循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19601412/