我有一个ASP.NET站点,其中身份验证模式=“Windows”。刚刚下载了WebMatrix beta 2,尝试调试我的应用程序。
在WebMatrix中,我在Visual Studio中按F5后出现401错误。同样在VS中,“无法在Web服务器上启动调试。在与Web服务器通信时发生了身份验证错误。”当我单击帮助按钮时,MSDN告诉我需要启用Windows身份验证。
我没有看到WebMatrix中的身份验证选项。 This问题类似,但似乎不适用于我(并且没有回答)。
更多信息(不确定是否适用)。我在WebMatrix中启用了SSL。 VS设置为使用URL为https://localhost:44300/routing/development.aspx的自定义Web服务器。在WebMatrix中,请求视图中的URL为https://localhost:44300/routing/development.aspx/debugattach.aspx(不确定debugattach.aspx的来源)。
答案 0 :(得分:5)
我想我找到了答案。看起来Beta 2(我没有使用Beta 1)有很多无法通过UI访问的选项。
在%My Documents%\ IISExpress \ config \ applicationhost.config中,第349行是
<windowsAuthentication enabled="false">
将“false”改为“true”对我有用。
答案 1 :(得分:3)
今天刚开始工作了。您必须手动编辑服务器的applicationhost.config文件,因为它没有任何UI。它位于我的文档/ IISExpress / config / applicationhost.config。
下在您最喜爱的文本编辑器中打开此功能后,您必须添加一部分XML来设置您的网站以使用自定义设置运行。 </configuration>
终止符上方的行,将以下内容复制并传递到您的文件中:
<location path="SiteName">
<system.webServer>
<security>
<authentication>
<anonymousAuthentication enabled="false" />
<basicAuthentication enabled="true" />
<windowsAuthentication enabled="true" />
</authentication>
</security>
</system.webServer>
</location>
确保更改path =“SiteName”以使其与WebMatrix中的网站名称匹配。另外,请确保将匿名,基本或Windows身份验证更改为true或false,具体取决于您的网站运行所需的内容。
答案 2 :(得分:1)
我有同样的问题,我也在寻找解决方案。
坦率地说,我甚至不会想到这应该有效(特别是在看到Scott Guthrie链接到文章后,告诉他们使用宏来附加到iisexpress进程:http://www.intrepidstudios.com/blog/2010/7/11/debug-your-net-web-project-with-iis-express-t.aspx),但这曾经适用于我在Beta 1中。因此,一个解决方案可能是回到Beta 1。
答案 3 :(得分:1)
试
<appSettings>
<add key="enableSimpleMembership" value="false" />
</appSettings>