Web服务部署到生产服务器

时间:2018-10-17 14:14:38

标签: asp.net .net web-services iis asmx

我在本地计算机上的IIS中正确运行了旧式.NET Web服务:

http://localhost/MyService/MyService/Service1.asmx

我添加了一个Web引用并将其属性设置为动态,以便可以简单地更改Web.config文件中的URL。在部署到登台服务器之前,我先对其进行了配置:

<client>
  <endpoint address="http://staging.myserver.net/WSTest/WSTest/Service1.asmx"
    binding="basicHttpBinding" bindingConfiguration="Service1Soap"
    contract="ServiceReference1.Service1Soap" name="Service1Soap" />
</client>

我可以像这样在服务器上访问它,并且可以正常工作:

http://staging.myserver.net/MyService/service1.asmx

但是,我需要它像下面这样解决,因为这是外部客户端访问它的方式:

http://staging.myserver.net/MyService/MyService/service1.asmx

我在登台服务器上的IIS配置设置没有发现任何问题。我想念什么吗?

1 个答案:

答案 0 :(得分:1)

通常来说,即使在嵌套方式下,您也可以自由在网站下设置应用程序。

Website
|
--Application MyService
  |
  --Application MyService (here you host the .asmx)

就像您发现的那样,很容易实现。

但是,有一些危险信号,

  1. .asmx太旧了,大多数人都升级到基于REST / Graph的Web API。
  2. 嵌套应用程序仍然很少(或不必要)。在大多数情况下,您应该针对短网址。但是由于是您的外部用户需要这种URL模式,因此您可能无法说服他们。