Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/321.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# IIS 7.5-错误HTTP 401.0-未经授权_C#_Asp.net Mvc_Iis_Iis 7.5_Http Status Code 401 - Fatal编程技术网

C# IIS 7.5-错误HTTP 401.0-未经授权

C# IIS 7.5-错误HTTP 401.0-未经授权,c#,asp.net-mvc,iis,iis-7.5,http-status-code-401,C#,Asp.net Mvc,Iis,Iis 7.5,Http Status Code 401,我有一个Asp.net MVC应用程序在Visual Studio 2015中完美运行,带有IIS EXPRESS(本地计算机) 我尝试在其他计算机(Windows Server 2008 R2 w/IIS 7.5)中执行此应用程序。我进行了部署,并将其放入文件夹“C:\inetpub\wwwroot\testsite” 在ExecuteLocalHost/testsite上,索引页正常显示,但在提交表单(这是一个登录页)时,我的IIS显示“401.0错误” 我使用的是“身份验证模式表单”:

我有一个Asp.net MVC应用程序在Visual Studio 2015中完美运行,带有IIS EXPRESS(本地计算机)

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

在ExecuteLocalHost/testsite上,索引页正常显示,但在提交表单(这是一个登录页)时,我的IIS显示“401.0错误”

我使用的是“身份验证模式表单”:


池应用程序是“DefaultAppPool”。身份验证:“匿名=打开”,“窗体=打开”,其他选项=关闭

我尝试了StackOverflow其他帖子中的各种技巧,但我无法解决我的问题=(


谢谢!

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

如果要启用日志记录,请参阅这篇TechNet文章:

对于
匿名用户
,有一个使用
应用程序池标识
或特定用户的凭据的设置。有时,它默认为特定用户,而不是
匿名用户
。如果这是您的问题,以下设置有望解决此问题:

  • IIS管理器→ 地点→ 网站
  • 双击“身份验证”
  • 选择匿名身份验证
  • 从“操作”面板中,选择“编辑”
  • 选择应用程序池标识并单击确定

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

    显示完整的401.0错误页面。如果您仔细检查,SO上的其他帖子都是针对401的。(其他内容),或者他们的错误页面不同。在尝试别人的提示之前,请确保首先遇到完全相同的问题。我也有同样的问题。你找到答案了吗?@Diana,我创建了一个新的IIS应用程序作为子域。以前我尝试在site.com/app中使用,现在我在app.site.com中使用并工作。我不记得很多细节,因为它们我知道这是两年前的事了,但还是:谢谢你的回答:)我想让你知道,在为我挖掘了两天后,问题是web.config继承。我不得不将主应用程序的web.config中的许多内容放在一个标记中,以防止子应用程序尝试使用它们。我尝试了以下步骤,但没有解决我的问题:(这是您收到的错误类型?请回答!显然是的,但我的IIS 7.5已打开,操作系统为葡萄牙语,但错误相同!我已编辑了上面的答案。请告诉我它是否解决了您的问题。祝您好运。请像这里一样转到IIS 7.5中的身份验证模块,并检查
    匿名身份验证
    是否为E。)祝你好运,你能解释一下你的答案吗,我也有同样的问题
    <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>