• 无法在web服务器上启动调试。调试失败,因为没有启用集成windows身份验证


    症状

    在使用完全限定的域名 (FQDN) 或自定义主机标头浏览承载于运行 Microsoft Internet 信息服务 (IIS) 5.1 或更高版本的计算机上的本地网站时,可能会收到类似于以下内容的错误消息:
    HTTP 401.1 - 未授权:登录失败
    当网站使用集成身份验证并具有映射到本机环回地址的名称时,将出现此问题。

    注意:仅当尝试直接在服务器上浏览网站时,才会收到此错误消息。如果从客户端计算机浏览网站,网站会正常运行。

    此外,还在安全事件日志中记录了类似于以下事件消息的事件消息:此事件消息包括“登录进程”项的值中的一些奇怪字符:

    事件类型:失败审核
    事件来源:安全性
    事件类别:登录/注销
    事件 ID:537
    日期:日期
    时间:时间
    用户:NT AUTHORITY\SYSTEM
    计算机:Computer_Name
    描述:登录失败:
    原因:登录时出现错误
    用户名:User_Name
    域:Domain_Name
    登录类型:3
    登录过程:Ðùº
    身份验证包:NTLM
    工作站名:Computer_Name
    状态代码:0xC000006D
    子状态代码:0x0
    调用方用户名:-
    调用方域:-
    调用方登录 ID:-
    调用方进程 ID:-
    传递服务:-
    源网络地址:IP_Address
    源端口:Port_Number

    注意:有时,事件消息中出现的奇怪字符可能类似于以下字符:
    Ðù²
    。当您尝试在 Microsoft Visual Studio 2003 中调试 Microsoft ASP.NET 项目时,还可能收到类似于以下内容的错误消息:
    Error while trying to run project:Unable to start debugging on the web server.You do not have permissions to debug the server. 

    Verify that you are a member of the 'Debugger Users' group on the server.
    注意:此错误消息中单词“Web”未采用首字母大写。

    所发出的 Web 服务请求不会在 IIS 日志中产生 HTTP 401 消息。在使用 Web 服务的应用程序的错误事件的“说明”部分中可能会记录 HTTP 401 消息。例如,Microsoft Commerce Server 2002 可能会出现此行为。如果出现此行为,则这是 Microsoft Windows Server 2003 Service Pack 1 (SP1) 和环回检查安全功能所进行的更改的表现。

    原因

    如果安装 Microsoft Windows XP Service Pack 2 (SP2) 或 Microsoft Windows Server 2003 Service Pack 1 (SP1),则会出现此问题。Windows XP SP2 和 Windows Server 2003 SP1 包括一个环回检查安全功能,用于帮助防止计算机受到反射攻击。因此,如果所使用的 FQDN 或自定义的主机标头与本地计算机名称不匹配,则会出现身份验证失败。

    替代方法

    重要说明:此部分、方法或任务包含有关如何修改注册表的步骤。但是,注册表修改不当可能会出现严重问题。因此,请一定严格按照下列步骤操作。为了获得进一步保护,请在修改注册表之前对其进行备份。这样就可以在出现问题时还原注册表。有关如何备份和还原注册表的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
    322756 如何在 Windows XP 中备份和还原注册表


    可使用两种方法解决此问题,请根据您的具体情况使用以下方法之一:

    方法 1:禁用环回检查

    第一种方法是通过设置 DisableLoopbackCheck 注册表项来禁用环回检查。

    若要我们为您解决该问题,请转到“帮我修复此问题”部分。如果您想自己修复此问题,请转到“我自己修复此问题”部分。

    帮我修复此问题

    若要自动设置 DisableLoopbackCheck 注册表项,请单击“修复此问题”链接。单击“文件下载”对话框中的“运行”,然后按照修复此问题向导中的步骤执行操作。

    修复此问题 
    Microsoft Fix it 50306


    注意:此向导可能只提供英文版本。但是,Windows 的其他语言版本也提供自动修复功能。

    注意:如果您使用的计算机并未出现此问题,则可将自动修复功能保存至闪存驱动器或 CD 中,然后就可在出现此问题的计算机中运行该功能。

    我自己修复此问题

    若要自己设置 DisableLoopbackCheck 注册表项,请按照下列步骤操作:
    1. DisableStrictNameChecking
      注册表项设置为 1。 有关具体操作方法的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中的相应文章:
      281308 无法使用别名连接到基于 Windows 2000 或 Windows Server 2003 的计算机上的 SMB 共享 (EN)
    2. 依次单击「开始」、“运行”,键入 regedit,然后单击“确定”
    3. 在注册表编辑器中,找到并单击下面的注册表项:
      HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
    4. 右键单击“Lsa”,指向“新建”,然后单击“DWORD 值”
    5. 键入 DisableLoopbackCheck,然后按 Enter。
    6. 右键单击 DisableLoopbackCheck,然后单击“修改”
    7. 在“数值数据”框中,键入 1,然后单击“确定”
    8. 退出注册表编辑器,然后重新启动您的计算机。

    方法 2:指定主机名

    若要指定映射到环回地址并且可以连接到计算机上的网站的主机名,请按照下列步骤操作:
    1. DisableStrictNameChecking
      注册表项设置为 1。 有关具体操作方法的更多信息,请单击下面的文章编号,以查看 Microsoft 知识库中的相应文章:
      281308 无法使用别名连接到基于 Windows 2000 或 Windows Server 2003 的计算机上的 SMB 共享 (EN)
    2. 依次单击「开始」、“运行”,键入 regedit,然后单击“确定”
    3. 在注册表编辑器中,找到并单击下面的注册表项:
      HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\MSV1_0
    4. 右键单击“MSV1_0”,指向“新建”,然后单击“多字符串值”
    5. 键入 BackConnectionHostNames,然后按 Enter。
    6. 右键单击“BackConnectionHostNames”,然后单击“修改”。
    7. 在“数值数据”框中,为本地计算机上的网站键入一个或多个主机名,然后单击“确定”
    8. 退出注册表编辑器,然后重新启动 IISAdmin 服务。
  • 相关阅读:
    Mac下搭建SVN服务器
    iOS的扩展类,扩展属性
    关于TableViewCell高度自适应问题的整理
    关于适配的一点考虑
    Visual format language
    css命名定义
    定位之初解
    定位以及relative和absolute的结合
    float的一点想法
    javascript的学习路子
  • 原文地址:https://www.cnblogs.com/raphael5200/p/5114859.html
Copyright © 2020-2023  润新知