【问题标题】:Host URL of websocketpp serverwebsocketpp 服务器的主机地址
【发布时间】:2012-06-26 12:03:47
【问题描述】:

我用 websocketpp (C++) 制作了一个 websocket 服务器,并用 PHP 制作了一个 websocket 客户端。当我在本地机器上测试它时,它可以工作:客户端可以连接到服务器,他们可以互相发送一些数据。

然后我将服务器脚本放在我的服务器上并在那里编译它。编译后它正在运行并“工作”:服务器也是另一个服务器的客户端,它们连接并传输数据。但是,我的 PHP 客户端无法连接到 C++ websocket 服务器。我实际上不知道要使用哪个主机 URL。我试过这些:

ws://www.url.nl:port/folder/program-name
ws://www.url.nl:port/
ws://www.url.nl:port/program-name

如何引用我的服务器?

我希望我的问题很清楚,但如果需要,请随时要求澄清。

【问题讨论】:

  • 您是使用直接连接还是在设置中使用任何(反向)代理,例如 apache mod_proxy、squid 等?
  • 本地我使用:ws://localhost:8000/
  • 我想我使用的是直接连接,因为我没有做任何特别的事情。我怎么确定?

标签: php c++ websocket


【解决方案1】:

那么你的网址应该是ws://www.url.nl:port/

确保您的服务器/网络上没有防火墙阻止您的请求。您可以通过运行telnet www.url.nl port 来执行此操作。如果您有权访问 netcat,请使用 nc -v www.url.nl port,这将为您提供有关连接状态的更多详细信息。

如果您有任何错误消息,这将非常有帮助。 ;-)

EDIT运行服务:

确保您的服务正在运行并侦听正确的网络接口和端口。

在 Linux 上使用 netstat -tulpen 或在 Windows 上使用 netstat -ano

EDIT 检查您的防火墙规则: iptables -L

【讨论】:

  • 我无法连接.. 它说“连接被拒绝”。对于 localhost 它确实有效。这是什么意思?
  • “连接被拒绝”表示您的网络服务运行不正常或您被网络组件(如防火墙)阻止
  • netstat 告诉我:tcp 0 0 :::8000 :::* LISTEN 906 737603432 5808/test7
  • 好的,netstat 输出看起来不错。让我们检查一下防火墙设置iptables -L
  • hmz...权限被拒绝,因为我没有root权限...我该怎么办?顺便说一句,已经非常感谢你了!
猜你喜欢
  • 1970-01-01
  • 2017-01-23
  • 1970-01-01
  • 2011-10-19
  • 2017-05-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多