2016-04-22 115 views
0

我有一个非常简单的VB脚本代码,我试图通过它来访问更新服务器端某些表的网站。每当我运行VB脚本时,我都会收到IIS 7.5详细错误 - 404.0。我的网站完全可以访问。我可以从当前的机器和其他机器浏览它。我在安装网站的同一台机器上运行VB脚本。我也尝试从管理员模式下的命令提示符运行脚本,但也没有帮助。这里是我的VB脚本:VB脚本无法呼叫一个网站:获取404错误

sUrl = "http://<mymachineName>/mywebsite/api/machines/AssignMachineToRuleSet?domain=myDomainName&machinename=Machine03&ruleSetName=Engineering" 

HTTPPost sUrl 
Function HTTPPost(sUrl) 
set oHTTP = CreateObject("MSXML2.ServerXMLHTTP.6.0") 
oHTTP.open "GET", sUrl, false, "<DomainName>\Administrator", "Passw0rd" 
oHTTP.setRequestHeader "Content-Type", "application/x-www-form-urlencoded" 
oHTTP.setRequestHeader "Content-Length", Len(sRequest) 
oHTTP.send 
response = oHTTP.responseText 
Wscript.Echo response 
End Function 

我也尝试过改变“MSXML2.ServerXMLHTTP.6.0”的版本MSXML2.XMLHTTP和MSXML2.XMLHTTP.3.0但都给予同样的错误。我的网站是用ASP.Net MVC编写的。它在IIS中托管。网站的应用程序池正在网络服务帐户下运行,该帐户是内置的NT Authority帐户。我尝试捕获通过fiddler发送到IIS的请求,但它没有显示任何请求。

回答

0

我真的很抱歉打扰你们。这是我的错误。其实在网址http://<mymachineName>/mywebsite/api/machines/AssignMachineToRuleSet?domain=myDomainName&machinename=Machine03&ruleSetName=Engineering我给网站名称不正确。不知何故,与该网站相对应的磁盘上的目录名称与在IIS中创建的虚拟目录的名称不同。我试图使用磁盘上的目录名称来调用网站。实际上,我应该在创建网站时使用在IIS中分配的虚拟目录名称。当我改变URL指向与网站相对应的虚拟目录时,它就工作了。虚拟目录的名称是myweb而不是mywebsite。 VB脚本没有错误。