【问题标题】:Connecting to remote golang server连接到远程 golang 服务器
【发布时间】:2026-02-01 03:25:01
【问题描述】:

我一直在尝试远程连接到我编写的 sockjs-go (https://github.com/igm/sockjs-go) 服务器应用程序。我在 Windows 上本地开发,一切正常。当我尝试在远程 linux 服务器上运行时(显然是在 linux 机器上构建之后),我永远无法连接到 sockjs 服务器。

  • 我已尝试在远程计算机上运行 sockjs-go 存储库中的示例 echoserver Web 示例,但我也无法连接到它。

  • 我确保将 sockjs 客户端 IP 从本地机器更改为远程机器。

  • 我有正确的公共 IP 地址,可以查看由 lighttpd 提供的静态网页。

我尝试在 google 上搜索任何特定于 golang 的内容,但一无所获。任何建议都会很棒。

更新

我正在使用这里给出的回声测试代码:https://github.com/igm/sockjs-go/tree/v2/examples/webecho

据我所知,linux 服务器没有过滤。 8080端口在运行webecho前关闭,启动webecho后打开。

我也尝试过 https://coderwall.com/p/wohavg/creating-a-simple-tcp-server-in-go ,我可以在本地连接但不能远程连接。任何想法为什么我无法远程连接到 go 程序,但其他程序连接没有问题?

【问题讨论】:

  • 发布一些代码 + 错误(如果有)+ 连接日志输出(即来自 lighttpd,如果你通过它进行代理)
  • 远程linux机器过滤了吗?中间是否有其他防火墙?

标签: go


【解决方案1】:

我显然在使用不受支持的端口。我最终以 root (sudo) 身份运行并绑定到端口 80,因为我知道它可以适当地提供 http 流量。

【讨论】: