安装 Discourse 时端口 80/443 无法访问

更新:nmap 和 nc 显示端口 80 和 443 已关闭。这对于 Discourse 设置有问题吗?我以为这仅仅意味着端口是开放的,但没有服务正在监听它们。我期望 Discourse 设置能够……你知道的……在这些端口上设置所需的东西。我已经有了允许这些端口流量的防火墙规则,所以我不知道如何进一步打开它们。我是否需要先在这些端口上运行服务才能运行 Discourse 设置(以及我该如何做)?

< 原始帖子 >

大家好,我是 Discourse 的新手,正在尝试运行 discourse-setup,但收到了令人讨厌的“计算机的端口 443 似乎无法访问”以及“端口 80 的连接也失败了”的消息。

我知道这是常见问题,并且我已经阅读了许多关于此主题的帖子,但没有一个建议起作用。它在 /var/discourse,我安装了 curl,我的 DNS 已设置好,我的防火墙没有阻止,我没有使用 Cloudflare 等。

我正在 IPv6 VPS 上运行 Ubuntu 22.04(没有 IPv4 地址,但我听说这没关系)。VPS 上安装了另一个 nginx 以供将来使用,但我已经将其关闭(以及所有非 Discourse 服务),并禁用了自动启动并重新启动了服务器。我的目标是让 Discourse 在此服务器上自行运行。

我可以通过我的完整子域名(即 discourse.myvps.com)从 VPS 本身和我的家庭计算机 ping 我的 VPS,并且我的电子邮件提供商已验证了我电子邮件服务的 DNS 设置。我还添加了 ufw 规则以明确为 IPv4 和 v6 流量打开端口 80 和 443,并且规则通过“ufw status”正确显示。我的托管公司说他们什么都不阻止。而且我认为我不需要指定任何额外的东西来访问 Discourse Docker 容器。

然而,netstat 没有显示这些端口的任何信息,NC 返回“连接被拒绝”。Telnet 也返回“连接被拒绝”,但我假设那是因为我还没有运行任何 HTTP 服务(Discourse 安装程序不负责处理这个问题吗?)。

任何帮助都将不胜感激,谢谢!

附注:我很乐意发送任何额外信息、截图等。

也许您已经解决了这个问题。如果没有,您能否确认您正在按照本指南安装 Discourse:discourse/docs/INSTALL-cloud.md at main · discourse/discourse · GitHub

我不是回答您问题的最佳人选。过去,在按照指南在全新的 Ubuntu 22.04 服务器上进行设置后,它对我来说就能正常工作,无需任何额外配置。

如果您仍然遇到问题,社区中的某个人可能可以提供帮助。

谢谢。是的,我正在遵循该指南,我的服务器比必需的要强大,所有先决条件都已干净地安装,并且一切似乎都很顺利,直到我尝试运行 discourse-setup。

在某个时候,我可能只会彻底清除服务器并重新开始,但我宁愿不这样做。而且我怀疑我可能会再次遇到同样的问题,因为我开始这个安装过程时使用的是一个全新的服务器(我唯一做的不一样的事情是为其他东西安装了一些先决条件,但现在这些东西都没有运行)。

1 个赞

听起来你做得对。你确定你的 DNS 解析到你的服务器 IP 并且只解析到那里吗?

哦。我一眼看不出 discourse-setup 是否只查看 IPv4。

你可能需要尝试运行 ./discourse-setup --skip-connection-test 来跳过测试。

1 个赞

谢谢 Jay - 这奏效了,让我得以继续处理下一个错误。

我将把这个问题发到另一个单独的帖子,因为它很奇怪,与当前标题无关:git clone 在 discourse-setup 中失败,但我设置了 v6 代理,并且如果我在命令行中输入相同的命令,它就可以工作。

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.