【问题标题】:Deploy web service application to network static IP address将 Web 服务应用程序部署到网络静态 IP 地址
【发布时间】:2018-02-12 10:02:58
【问题描述】:

我在 Visual Studio 中创建了一个 Web 服务应用程序。可以通过以下 URL 访问 Web 服务。

http://localhost:1863/WebServiceTest.asmx(在调试模式下) http://192.168.1.252/WebServiceApp/WebServiceTest.asmx(通过 IIS 发布后)

如果我将“192.168.1.252”替换为网络的静态 IP 地址,该程序仍然有效。但是,如果不使用相同的网络,相同的 URL 将不起作用 - 返回 *"Connection denied" 错误。

如何修复或调试此问题?

我做了什么:

  1. 使用Windows Firewall高级安全在入站和出站规则中添加了 TCP 端口 80。
  2. 将 PC 更改为使用静态 IP 地址 (192.168.1.252)。
  3. 将端口 80 转发到静态 IP 地址 (192.168.1.252) 和端口 80。
  4. 关闭防火墙。
  5. netstat -a show port 0.0.0.0:80 正在聆听
  6. telnet“网络静态IP地址”“80”连接失败。

【问题讨论】:

  • 你能分享服务器和客户端配置吗?
  • 192.168.1.252 是(通常)本地 IP 地址,这意味着您的 LAN 本地。如果是这种情况,您显然无法从 LAN 外部访问它。您需要配置路由器才能将请求转发到内部 IP 地址(和端口)
  • @FaizanRabbani 你是说 Web.config 吗?如果是,请参考下文。我没有客户端应用程序。
  • @GianPaolo 路由器中的端口转发还不够?我的手机的 IP 是 10.98.241.248,所以我添加了一个端口转发,端口 80 的源目标“10.98.241.248”到端口 80 的本地 IP (192.168.1.252)。

标签: c# web-services networking tcp


【解决方案1】:

您应该在您网站的 IIS 设置中设置 :port

IIS* → 右击您的网站* → 点击Edit Binding → 在表单上,​​选择行 → edit → 更改端口然后保存。

【讨论】:

  • 我的网络服务在默认网站下。所以我点击编辑绑定后,端口是80,IP地址是*。这个配置正确吗?或者应该改变什么?我想80端口没问题吧?
猜你喜欢
  • 1970-01-01
  • 2014-06-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-06-05
  • 1970-01-01
  • 1970-01-01
  • 2012-06-29
相关资源
最近更新 更多