0

我想在互联网上使用我的网络服务。我打开了端口 4501,并在调制解调器和 Windows 上禁用了防火墙。我可以写我的全局IP,我可以打开调制解调器控制接口。但我想连接到地址为 xx.xx.xx.xx:4501/Products.svc 的 iis

它适用于本地主机(http://localhost:4501/Product.svc)但我无法连接到互联网上的 svc ..

我不知道问题出在哪里。

当我添加我的 svc 链接地址作为添加参考服务时,我收到了这个错误

  There was an error downloading 'http://xx.xx.xx.xx:4501/Products.svc'.
  Unable to connect to the remote server
  Hedef makine etkin olarak reddettiğinden bağlantı kurulamadı xx.xx.xx.xx:4501
  Metadata contains a reference that cannot be resolved:                         'http://xx.xx.xx.xx:4501/Products.svc'.
  There was no endpoint listening at http://xx.xx.xx.xx:4501/Products.svc that could           accept the message. This is often caused by an incorrect address or SOAP action. See    InnerException, if present, for more details.
  Unable to connect to the remote server
  Hedef makine etkin olarak reddettiğinden bağlantı kurulamadı xx.xx.xx.xx:4501
  If the service is defined in the current solution, try building the solution and      adding the service reference again.

还有一点,

如果我启动 IIS,wcf 服务即使在 localhost 中也不起作用。如果我在 Visual Studio 中启动它(我的意思是 asp.net 开发服务工作)它工作..

IIS 版本是 7.5.7600,我将应用程序池添加为 Asp.net 4.0

4

1 回答 1

0

您在 IIS 中将端口 4501 用于 HTTP 是否有任何特定原因?

Visual Studio 2010 WebDev WebServer (Cassini) 使用随机端口号(在您的情况下为 4501)来简化配置。它假设端口 80 可以被它的大哥 IIS 或任何其他软件占用。

这对于在本地机器上进行开发来说很好,但在生产中不需要使用相同的端口。

默认的 HTTP 端口是 80,它通常是网络中最开放的端口。

在 IIS 中使用端口 80 进行 HTTP 流量,您的生活会轻松很多。

PS 你试过http://xx.xx.xx.xx/Products.svc吗?端口号是 Web 服务配置的一部分,当您将应用程序移动到 IIS 时不会复制它。IIS 可能已使用默认 HTTP 端口。

于 2012-06-27T02:20:42.257 回答