HTTP 错误 500.0 - 打开 IIS 网页时出现内部服务器错误
本文可帮助你解决访问 Internet Information Services (IIS)上托管的网站时发生的 HTTP 错误 500.0 错误。
原始产品版本: Internet Information Services
原始 KB 数: 942031
总结
本文主要介绍在 IIS Web 应用程序上遇到 HTTP 错误 500.0 错误时 HResult 代码。 有关 Web 应用程序代码导致的 500.0 错误,请参阅 “详细信息 ”部分。
本文面向网站管理员。 这些错误有许多原因,可能会影响许多不同的系统配置。 本文中所述的过程必须由服务器上管理员组的成员执行。
遇到这些错误的最终用户应通知网站管理员问题。
HResult 代码
HTTP 错误 500.0 消息指示在返回错误时托管网站的 Web 服务器上发生问题。
请参阅以下这些错误的详细信息。
HResult 代码 0x80070032
错误消息:
应用程序“<应用程序名称>”中的服务器错误
HTTP 错误 500.0 - 内部服务器错误
HRESULT: 0x80070032
HRESULT ISAPI 筛选器drive:\FilePath\ISAPI_FLT.dll尝试注册SF_NOTIFY_READ_RAW_DATA
通知的说明。
原因
出现此问题的原因是 IIS 不支持注册 SF_NOTIFY_READ_RAW_DATA
通知的 Internet 服务器 API (ISAPI) 筛选器。
解决方法
不要使用在 IIS 中注册通知的 SF_NOTIFY_READ_RAW_DATA
ISAPI 筛选器。
HResult 代码 0x80070035
错误消息:
应用程序“<应用程序名称>”中的服务器错误
HTTP 错误 500.0 - 内部服务器错误
HRESULT: 0x80070035
对 HResult 的说明由于发生了内部服务器错误,无法显示该页。
原因
出现此问题的原因是运行 IIS 的服务器无法访问所请求位置的配置根目录。
解决方法
确保运行 IIS 的服务器可以访问所请求位置的配置根目录。
HResult 代码 0x8007000d
错误消息:
应用程序“<应用程序名称>”中的服务器错误
HTTP 错误 500.0 - 内部服务器错误
HRESULT:0x8007000d
HRESULT 说明 处理程序 "ASPClassic" 在其模块列表中包含错误的模块 "IsapiModule"。
原因
之所以出现此问题,是因为网站模块列表中缺少 ISAPIModule 模块。 ISAPIModule 模块位于以下位置:drive:\Windows\System32\inetsrv\isapi.dll。
解决方法
若要将 ISAPIModule 模块添加到网站的模块列表,请执行以下步骤:
- 选择“开始>运行”,键入inetmgr.exe,然后选择“确定”。
- 在 IIS 管理器中,展开服务器名称>>网站,然后选择要修改的网站。<
- 在“功能”视图中,双击“模块”。
- 在 “操作 ”窗格中,选择“ 添加本机模块”。
- 在 “添加本机模块 ”对话框中,选中 IsapiModule 复选框,然后选择“ 确定”。
HResult 代码 0x800700c1
错误消息:
应用程序“<应用程序名称>”中的服务器错误
HTTP 错误 500.0 - 内部服务器错误
HRESULT:0x800700c1
对 HResult 的说明由于发生了内部服务器错误,无法显示该页。
原因
出现此问题的原因是脚本映射无效。
解决方法
若要确保脚本映射指向 可以处理请求的ISAPI.dll 文件,请执行以下步骤:
选择“开始>运行”,键入inetmgr.exe,然后选择“确定”。
在 IIS 管理器中,展开服务器名称>>网站,然后选择要修改的网站。<
在“功能”视图中,双击“处理程序映射”。
确保脚本映射指向正确的 ISAPI.dll 文件。
例如,.asp 文件应映射到 %windir%\system32\inetsrv\asp.dll 文件。
HResult 代码 0x80070005
错误消息:
应用程序“<应用程序名称>”中的服务器错误
HTTP 错误 500.0 - 内部服务器错误
HRESULT:0x80070005
对 HResult 的说明对 ISAPI 筛选器“path_of_isapi”的 LoadLibraryEx 失败。
原因
出现此问题的原因是在全局级别或网站级别加载无效的 ISAPI 筛选器。
解决方法
若要删除无效的 ISAPI 筛选器,请执行以下步骤:
- 选择“开始>运行”,键入inetmgr.exe,然后选择“确定”。
- 在 IIS 管理器中,展开服务器名称>>网站,然后选择要修改的网站。<
- 在“功能”视图中,双击“ISAPI 筛选器”。
- 右键单击要删除的 ISAPI 筛选器,然后选择“ 删除”。
HResult 代码 0x8007007f
HResult 0x8007007f 有两种可能性:
错误消息 1
应用程序“<应用程序名称>”中的服务器错误
HTTP 错误 500.0 - 内部服务器错误
HRESULT: 0x8007007f
对 HRESULT 的说明对 ISAPI 筛选器“path_of_isapi”调用 GetProcAddress 失败。
原因
出现此问题的原因是在全局级别或网站级别加载无效的 ISAPI 筛选器。
解决方法
若要删除无效的 ISAPI 筛选器,请执行以下步骤:
- 选择“开始>运行”,键入inetmgr.exe,然后选择“确定”。
- 在 IIS 管理器中,展开服务器名称>>网站,然后选择要修改的网站。<
- 在“功能”视图中,双击“ISAPI 筛选器”。
- 右键单击要删除的 ISAPI 筛选器,然后选择“ 删除”。
错误消息 2
应用程序“<应用程序名称>”中的服务器错误
HTTP 错误 500.0 - 内部服务器错误
HRESULT: 0x8007007f
对 HRESULT 的说明要查找的资源存在问题,因此无法显示。
原因
出现此问题的原因是请求的资源的处理程序映射指向 无法处理请求的 .dll文件。
解决方法
若要将请求的资源的处理程序映射指向 可处理请求的 .dll文件,请执行以下步骤:
选择“开始>运行”,键入inetmgr.exe,然后选择“确定”。
在 IIS 管理器中,展开服务器名称>>网站,然后选择要修改的网站。<
在“功能”视图中,双击“处理程序映射”。
右键单击要编辑的脚本映射,然后选择“ 编辑”。
在“编辑脚本映射”对话框中,在“可执行文件”框中键入相应的可执行文件,然后选择“确定”。
例如,.asp 文件应映射到 %windir%\system32\inetsrv\asp.dll 文件。
详细信息
如果 Web 应用程序代码引发异常并被应用程序的运行时(例如,ASP.NET 运行时)捕获,则可能还会在 Web 响应中看到 HTTP 错误 500.0 错误。 对于从 Web 应用程序代码引发的任何异常,请检查应用程序事件日志或你自己的自定义应用程序日志,了解异常类型、异常消息和异常调用堆栈。
如果需要进一步调试,请使用最新版本的 DebugDiag 捕获 首次发生异常转储。