我刚刚在VS2012和Build Successful上开发了一个Web服务。 链接如:
http://localhost:55555/eTradingWebservice.asmx
但是当我改变这个时:
http://127.0.0.1:55555/eTradingWebservice.asmx
- >它返回BAD REQUEST - 我的Google Chrome上的主机名无效 在机器上是同样的问题(BAD REQUEST)
我检查了我的hosts文件,它包含字符串:
127.0.0.1 locahost
我尝试检查IIS服务,尝试使用以下链接:
http://localhost
http://127.0.0.1
一切都好。我使用VS2012在IIS8上部署我的项目
答案 0 :(得分:4)
问题是由于IIS Express没有为您的Web服务项目绑定127.0.0.1并且只在applicationhost.config文件中绑定了localhost。您需要添加127.0.0.1绑定才能使其生效。
该文件位于[我的文档] \ IISExpress \ Config文件夹中,您需要搜索项目绑定并添加127.0.0.1,就像我在我的机器上的示例中所做的那样:
<site name="MVCApp" id="15">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="D:\Projects\MVCApp" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:55555:localhost" />
<binding protocol="http" bindingInformation="*:55555:127.0.0.1" />
</bindings>
</site>
您可能还需要使用netsh打开它:
netsh http add urlacl url=http://127.0.0.1:55555/ user=everyone
完成后,您可以使用
删除它netsh http delete urlacl url=http://127.0.0.1:55555/
请看Using IISExpress for addresses other than localhost!'但它可以在我的电脑上运行!'
建议使用管理权限运行IISExpress的最后一步/您可以通过以管理员身份运行VS或打开具有管理权限的PowerShell提示并运行命令来执行此操作
C:\Program Files\IIS Express\iisexpress.exe /site:MyWebProject