2016-06-09 119 views
1

我有一个应用程序在Asp.net MVC完美运行在Visual Studio 2015,与IIS EXPRESS(本地计算机)。IIS 7.5 - Erro HTTP 401.0 - 未授权

我尝试在其他计算机(Windows Server 2008 R2 w/IIS 7.5)中执行此应用程序。我做了部署,我把文件夹放在“C:\ inetpub \ wwwroot \ testsite”中。

在执行localhost/testsite时,索引页显示正常,但在提交表单(它是一个登录页面)时,我的IIS显示“401.0错误”。

我使用 “身份验证模式形式”:

<system.web> 
    <compilation debug="true" targetFramework="4.5.2" /> 
    <httpRuntime targetFramework="4.5.2" /> 
    <authentication mode="Forms"> 
     <forms loginUrl="~/User/Login" timeout="2880" /> 
    </authentication> 
</system.web> 

池的应用是 “默认应用”。身份验证:“匿名= ON”,“Forms = ON”,其他选项= OFF。

我试图从这里从StackOverflow的其他职位的各种技巧,但我不可能解决我的问题=(

谢谢!

+0

显示完整的401.0错误页面。如果仔细检查,SO上的其他帖子是401.(其他内容),或者它们的错误页面不同。在尝试某人的小费之前,请确保首先遇到完全相同的问题。 –

回答

2

选择Web应用程序返回401 - Unauthorized,并双击认证功能。右键单单击“匿名身​​份验证”提供程序并选择编辑。将默认匿名用户帐户(“IUSR”)切换到ApplicationPoolIdentity。现在,右键单击左窗格中的Web应用程序,选择编辑权限 ...,选择安全选项卡,单击编辑 - >添加并添加IIS APPPOOL\NameOfAppPool。确保应用程序池标识具有读取和执行文件夹的权限。

如果要启用日志记录,看看这个TechNet文章:http://technet.microsoft.com/en-us/library/cc754631(WS.10).aspx

没有为anonymous user使用application pool identity的凭据或特定用户的设置。有时,它默认为一个特定用户,而不是anonymous user如果这是你的情况的问题,以下设置将有望解决这个问题:

  1. IIS管理器→网站→网站
  2. 双击“认证”
  3. 选择匿名身份验证
  4. 从操作面板中,选择编辑
  5. 选择应用程序池标识,然后单击确定
+1

我试过这些步骤,但没有解决我的问题:( – vanderHobus

+0

是[this](http://www.longwaysolutions.com/tkanetest/tmp/wiki/401_Unauthorized.jpg)你得到的那种错误? – Jogi

+0

Ty for reply!显然是的,但是我的IIS 7.5打开,操作系统是葡萄牙语,但是同样的错误! http://prntscr.com/beofhp – vanderHobus

0

解决方案:这不是你想要解决的方式......但它的工作方式是为我的应用程序创建一个新的子域。

+0

你能解释一下你的答案,我有同样的问题 – Sue