VB脚本无法调用网站:获取404错误

时间:2016-04-22 11:16:22

标签: asp.net-mvc iis vbscript iis-7.5

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

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

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

1 个答案:

答案 0 :(得分:0)

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