希望这是正确的堆栈交易网站发布此…
我们build立了一个新的内网networking服务器(Windows 2003 – IIS 6)。 我已经从旧的服务器迁移过来的一切,新的networking服务器似乎工作正常,除了ServerXMLHTTP。 我正在使用经典的ASP。
我知道这不是一个编码问题,因为它在旧的服务器上运行良好。
我通过它的URL从本地Intranet调用页面并得到“msxml3.dll错误”80072ee2“操作超时”错误。
在我需要检查的服务器上有一些设置吗?
如果有帮助的话,下面是我正在使用的代码的一个虚拟版本(并已使用多年):
<% TheURL = "http://intranet.ourdomain.com/SomePage.asp" Set xmlHTTP = Server.CreateObject("MSXML2.ServerXMLHTTP.3.0") xmlHTTP.open "GET", TheURL, false xmlHTTP.send() CurrentPage = xmlHTTP.ResponseText CurrentStatus = xmlHTTP.Status CurrentStatusText = xmlHTTP.StatusText CurrentReadiness = xmlHTTP.readyState If CurrentStatus = 200 AND CurrentReadiness = 4 Then Response.Write "We got the page" Else Response.Write "Page Unavailable" End If Set xmlHTTP = Nothing %>
该脚本在xmlHTTP.send()上失败。 所以我知道DLL是安装,否则它将无法创build对象。
它的行为几乎就像找不到自己。 但是,如果我login到服务器并打开浏览器,我可以通过它的URL调出网站。 我也做了一个proxycfg - u 。
我还比较了旧服务器和新服务器上的主机文件,没有看到任何区别。
https://stackoverflow.com/questions/5559722/msxml3-dll-error-80072ee2-in-asp-page
其中一个答案指向标题为“INFO:不要发送ServerXMLHTTP或WinHTTP请求到同一服务器”的微软页面。 (我不是在那里链接,因为我想让你去那个答案的页面,并投票。)