Как правильно получить вывод страницы asp, расположенной на том же сервере?
<%
GetUrl "/route/to/abc/123/"
Function GetUrl(url)
Set objXMLHTTP = CreateObject("MSXML2.ServerXMLHTTP.3.0")
objXMLHTTP.open "GET", URL, false
objXMLHTTP.send()
If objXMLHTTP.Status = 200 Then
Response.Write objXMLHTTP.ResponseText
End if
Set objXMLHTTP = Nothing
End Function
%>
приводит к этой надоедливой ошибке.
msxml3.dll error '80004005'
Unspecified error
/test.asp, line 7
переход на более новый serverxmlhttp
set objXMLHTTP = Server.CreateObject("MSXML2.ServerXMLHTTP.6.0")
выявляет другую, более значимую ошибку:
msxml6.dll error '80072ee6'
System error: -2147012890.
/test.asp, line 8
для чего Google с радостью нашел причину, в которой говорится: «Не используйте serverXmlHttp для подключения к тому же серверу. (https://support.microsoft.com/en-us/kb/316451) Чем вы пользуетесь? В статье мало что предлагалось.
В любом случае, круто, у моей ошибки есть веская причина. Но что вы используете для подключения к тому же серверу под классическим asp для захвата вывода страниц? Эта статья (https://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/aa23d158-000a-4ba2-8fe8-99895854d7f0.mspx?mfr=true) упоминает, что если я использую режим изоляции, то процесс выполняется отдельно от процесса веб-сервера, и я не могу использовать SSI, я все равно не могу понять, как его включить. В любом случае это звучит противно. SSI критичен в моем приложении, поэтому я не могу его учитывать.
Что у меня осталось (кроме очевидного: отказаться от ASP)? создать командную строку wscript.shell и вытащить ее оттуда, вернув обратно на стандартный вывод? отскочить от другого сервера рефлектора? Грр