故障现象:
近日,在VMware虚拟化部署迁移中,之前物理服务器中部署网站ASP组件Jmail服务一切正常,迁移完成后发现Jmail无法正常工作,其余组件能正常工作。
环境:Windows Server 2008 R2 ,IIS,ASP
详细错误如下:
Microsoft VBScript 运行时错误 错误 '800a01ad'
ActiveX 部件不能创建对象
/xxxxx/xxxre.asp,行 114
故障排查:其他物理服务器、VPS均未涉及Jmail服务,在问题发生后第一时间想到的是Jmail未成功安装或者未被注册。
-
- 安装问题
下载其他版本Jmail,安装完成后注册组件
regsvr32 “C:\Program Files\Dimac\w3JMail\jmail.dll”
问题依旧。 此时想到是否为权限导致,经过核定权限,仍然无法使用,在经历过反向代理服务器带来的Aspjpeg问题后,想到是否因为反向代理导致。-
- 反向代理
由于之前在反向代理方面出现过问题,按照反向代理的思路,通过私有地址做测试,发现显然不是反向代理导致。
-
- 网络问题
由于网络和技术分处不同部门,习惯性思维先自查问题,然后进行纠结于安全防护的影响,经过沟通发现思维存在误区,这一块完全不是问题,陷入盲点,瞎整。
-
- 版本兼容
在部署ASPX时候,需要程序池启用32位应用程序。惯性思维,X64很好兼容X86程序,长期无问题或已丧失本应该有的技能导致乌龙,最基本的问题被忽视。
通过启用 32 位应用程序问题得以解决。输入命令:
cscript %SYSTEMDRIVE%\inetpub\adminscripts\adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1 或者 在IIS应用池中, 高级设置, 启用 32 位应用程序, 选择“true”- 经验总结:
为了快速解决问题,因无探针探测,这导致在问题发生时不能很快定位解决。科学、高效的处置经验是多么重要呐。