ceacer 2 已发布 1月27号 分享 已发布 1月27号 某天一个系统的登录页面无法显示,显示Service Unavailable HTTP Error 503. The service is unavailable,马上登录服务器上查看IIS是否正常。打开IIS后发现应用程序池里的状态是已停止,便右键打开启动,启动后再次打开系统登录页面,还是无法显示,报503错误。再次查看应用程序池里的状态,又变成已停止。 上网搜了搜报错对应的解决方法,试了试方法:在应用程序池上–右键–高级设置–进程模型–标识,更改了这项里的“内置账户”,将原有的“ApplicationPoolIdentity”更改为“NetworkService”,然后重启下应用池,结果问题依旧。 又查看了系统日志,显示应用程序池将被自动禁用,原因是为此应用程序池提供服务的进程中出现一系列错误。 应用程序日志显示模块 DLL C:Program Files (x86)IISAsp.Net Core ModuleV2aspnetcorev2.dll 未能加载。返回的数据为错误信息。 根据日志内容查看与Net Core有关,但我记得这台WIN2008的服务器上没安装过,打开控制面板的程序进行查看,发现别的同事最近安装了.net7.0和.NET Framework4.5,原因分析:net core runtime基于vc_redist.x64运行的,所以也就出现了此类错误需要安装vc_redist.x64才能在iis上运行netcore项目,于是便下载进行安装,可最后提示安装失败了,原因是需要先安装补丁才行。生产服务器连不了外网,又没找到2008下的补丁,所以此路还是不通。 于是又在网上挖呀挖,最终找到applicationHost.config这个配置文件,它包括所有站点、应用程序、虚拟目录和应用程序池的定义,以及 Web 服务器设置的全局默认值。IIS的配置文件中ApplicationHost.config的modules 元素中注册了很多模块 ,这些模块供IIS承载的所有应用程序使用。 打开后,搜索找到AspNetCoreModuleV2,在后面增加蓝色部分内容,分别是集成模式,集成模式下运行时的版本和CPU型号适配。(包括:和) 至此,在应用程序池里重新启动一下,网页登录界面正常能显示出来,问题解决了。 评论链接 在其他网站上分享 更多分享选项...
推荐帖
创建账户或登录以发表评论
您需要成为会员才能发表评论
创建一个帐户
在我们的社区注册一个新账户。很简单!
注册新账户登入
已有账户?在此登录
立即登录