当前位置:首页 > 技术知识 > 正文内容

记录处理登录页面显示: HTTP Error 503. The service is unavailable.

maynowei9个月前 (09-14)技术知识110

某天一个系统的登录页面无法显示,显示Service Unavailable HTTP Error 503. The service is unavailable,马上登录服务器上查看IIS是否正常。打开IIS后发现应用程序池里的状态是已停止,便右键打开启动,启动后再次打开系统登录页面,还是无法显示,报503错误。再次查看应用程序池里的状态,又变成已停止。

上网搜了搜报错对应的解决方法,试了试方法:在应用程序池上--右键--高级设置--进程模型--标识,更改了这项里的“内置账户”,将原有的“ApplicationPoolIdentity”更改为“NetworkService”,然后重启下应用池,结果问题依旧。

又查看了系统日志,显示应用程序池将被自动禁用,原因是为此应用程序池提供服务的进程中出现一系列错误。

应用程序日志显示模块 DLL C:\Program Files (x86)\IIS\Asp.Net Core Module\V2\aspnetcorev2.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型号适配。(包括:<globalModules>和<system.webServer>)


至此,在应用程序池里重新启动一下,网页登录界面正常能显示出来,问题解决了。

相关文章

大厂 Go 编程规范(二):mutex(编程大厂是什么意思)

mutex 是golang 的互斥锁,可以保障在多协程的情况下,数据访问的安全。1、零值有效我们并不需要mutex指针mu := new(sync.Mutex) mu.Lock()直接可以使用mute...

Google前工程主管“入住”Oracle(google公司前台)

ZDNet至顶网服务器频道 10月11日 新闻消息:Oracle 已聘用了前 Snapchat 和 Google 工程部主管 Peter Magnusson,其主要的职责是运行一个被重新调整过的 of...

Oracle 不是有效的导出文件,标头验证失败 解决方法

第一种:网上搜索到的大多解决方法是说导出文件时使用的Oracle版本不一致问题,需要修改dmp文件的版本号。如果确定版本号确实不一样,请自行搜索一下解决方法。第二种:备份dmp文件时,备份的语句可能使...

Oracle高级数据库特性揭秘:存储过程、触发器与权限管理

当谈论Oracle高级数据库特性时,存储过程和函数、触发器、权限管理和安全性以及数据库连接和远程访问是关键概念。下面我将为每个主题提供详细的解释,并附上高质量示例。存储过程和函数: 存储过程和函数是预...

超详细的Oracle19c修改数据库用户名教程

概述由于开发很多视图指定了某个用户名,故需修改数据库用户名srmpro为srm。以下为操作过程..1、停止应用防止修改用户名密码后应用一直在发起错误连接,可事先查询哪个IP在连接数据库,然后断开对应连...

Oracel:ORA-12518:监听程序无法分发客户机连接

一、【问题描述】 最近,在系统高峰期的时候,会提示如上的错误,致使无法连接到服务器上的数据库。二、【分析过程】 1、首先判断是否由于监听配置不正确的原因导致? 系统在正常情况下都可以正常的使用,检查监...