下面是“IIS7.5 HTTP 错误 500 调用loadlibraryex失败的解决方法”的完整攻略。
问题描述
当在 IIS7.5 上部署应用程序时,有时可能会遇到 HTTP 错误 500,并且日志文件中会出现以下信息:
C:\Windows\system32\inetsrv> appcmd.exe recycle apppool /apppool.name:YourAppPoolName
Microsoft (R) Windows (R) 操作系统管理工具版本 6.1.7600.16385
Copyright (C) Microsoft Corporation。保留所有权利。
应用程序池“YourAppPoolName”正在重新启动。
成功。
Error) There was an error while performing this operation.
Details:
Filename:\\?\C:\Windows\MICROS~2\Framework64\v4.0.30319\aspnet_filter.dll
Error:LoadLibraryEx() returned error 0x1: Incorrect function.
这个问题的原因是 aspnet_filter.dll 无法被加载,导致应用程序无法正常启动。
解决方案
方案一:将 aspnet_filter.dll 从 Windows SxS 目录复制到 .NET Framework 目录
- 打开 Windows 资源管理器,进入以下路径:
C:\Windows\Microsoft.NET\Framework\v4.0.30319
-
找到 aspnet_filter.dll 文件,然后复制文件。
-
进入以下路径,
C:\Windows\System32\inetsrv
粘贴复制的 aspnet_filter.dll 文件。
- 重启 IIS 服务。打开命令提示符,输入以下命令来重启 IIS 服务:
iisreset /restart
方案二:更改 IIS 配置文件
-
打开 IIS 管理器。
-
选择你的应用程序池。
-
右键单击它,选择“高级设置”。
-
将“启用 32 位应用程序”设置为“True”。
-
重启 IIS 服务。打开命令提示符,输入以下命令来重启 IIS 服务:
iisreset /restart
示例说明
示例一:将 aspnet_filter.dll 从 Windows SxS 目录复制到 .NET Framework 目录
假设你的应用程序池名称为“YourAppPoolName”,你可以按照以下步骤进行操作:
- 打开 Windows 资源管理器,进入以下路径:
C:\Windows\Microsoft.NET\Framework\v4.0.30319
-
找到 aspnet_filter.dll 文件,然后复制文件。
-
进入以下路径,
C:\Windows\System32\inetsrv
粘贴复制的 aspnet_filter.dll 文件。
- 重启 IIS 服务。打开命令提示符,输入以下命令来重启 IIS 服务:
iisreset /restart
示例二:更改 IIS 配置文件
假设你使用的是 IIS7.5,你可以按照以下步骤进行操作:
-
打开 IIS 管理器。
-
选择你的应用程序池。
-
右键单击它,选择“高级设置”。
-
将“启用 32 位应用程序”设置为“True”。
-
重启 IIS 服务。打开命令提示符,输入以下命令来重启 IIS 服务:
iisreset /restart
希望以上解决方案对遇到这个问题的读者有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:IIS7.5 HTTP 错误 500 调用loadlibraryex失败的解决方法 - Python技术站