将旧的经典 ASP 应用程序从 Server 2008 R2 迁移到新的 Server 2008 R2 SP1,现在出现了严重问题。“旧”服务器和新服务器之间的所有设置和配置都相同,代码没有更改,我所做的只是将其从一个框移动到另一个框。
最初,500 将开始出现,最终变成Server.CreateObject Failed
:CDO.Message
Unknown scripting language
/path/file.asp, line 1
The scripting language 'VBScript' is not found on the server.
同一台服务器上还有其他经典 ASP 站点运行良好(事实上,该应用程序所属的站点也是经典 ASP 站点,并且运行良好)。
只需回收应用程序池即可消除所有错误,并且应用程序可以处理不确定数量的请求。这让我觉得这不是权限错误,也不一定是配置错误。目前,由于它是内部使用的,我每 30 分钟回收一次应用程序池,但它每天仍然会死机多次,我们这里说的不是 000 个请求,最多几十个。
我已经在另一个 2008 R2 SP1 盒子上重复了设置并得到了相同的结果,如果它有任何影响的话,这些是 Rackspace 云服务器;旧的在美国,新的在英国。
如果您能提示一下在哪里查找以及为什么在 2003 和 2008 R2 上没问题,我很乐意接受“编码错误”作为解决方案。
我最担心的是,这些服务器应该把我们所有的网站都顺利地运行在美国服务器上,其中一些也是旧的和经典的 ASP,那么它们是否也会全部失败?
答案1
仅探索可能的原因,您可能需要检查您的旧服务器是否是 Windows 32 位。如果是,您的新场景可能会强制将 COM 对象用作“进程外”实例,这可能性能副作用。