警告:计算机的端口443似乎无法通过主机名:<mydomain>.com 访问</mydomain>

应用程序未启动!

./discourse-doctor 可能有助于诊断问题。

./discourse-setup: line 260: *0: syntax error: operand expected (error token is " *0")

您的 Discourse 的主机名? [discourse.example.com]: .com

正在检查您的域名 . . .

警告:使用主机名 .com 无法访问计算机的 443 端口。

警告:连接到 http://.com (端口 80) 也失败。

这表明 .com 解析到某个不连接到您正在安装 discourse 的计算机的 IP 地址。

首先要做的是确认 .com 解析到此服务器的 IP 地址。

您通常在购买域名的同一地点进行此操作。

如果您确定 IP 地址解析正确,则可能是防火墙问题。

搜索“打开端口 YOUR CLOUD SERVICE”可能会有所帮助。

此工具仅用于最标准的安装。如果您无法解决上述问题,则需要自己编辑 containers/app.yml,然后键入

./launcher rebuild app

我有几个问题:

  • 我有 .com 并且已经有一个网站在运行。现在我想将 discourse 运行为 .com/discourse。应用程序运行在负载均衡器前面。但我需要在 discourse 端做任何事情吗?

  • discourse 运行在哪个端口?

  • 当我执行 curl 时,我可以访问该网站,但为什么 discourse 设置会出错?

  • 忽略邮件设置可以吗?

1 个赞

这应该是您的实际域名,而不仅仅是顶级域名 (TLD)。

2 个赞

不确定是否已替换,但值为 mydomain.com。我将其放在了“<”和“>”之间。

我能找到端口是 80

你好,Shibi

我刚来这里不久,但上周我遇到过类似的情况。使用你的域名托管两个不同服务器的最简单方法是使用子域名。你可以通过在 DNS 提供商处创建 A 记录来实现,其中主机名指定为 [sub-domain.your-domain.com](http://sub-domain.your-domain.com/),或者只指定子域名,然后指向 discourse 实例的 IP。

这篇文章 article 可能会对上述解决方案有所帮助。

我上面建议的解决方案可能对你有帮助。我认为将 discourse 作为其他应用程序的资源使用可能更难设置。

使用官方的云设置脚本,它默认将在端口 80 上运行。

你能提供更多细节吗?

如果你这样做,你将无法发送任何电子邮件,例如邀请和账户注册确认。但你可能无法忽略 smtp 设置。

顺便说一句,443 是 HTTPS 端口,用于建立加密。这意味着你的域名可能配置不正确,并且 Discourse 设置无法连接到你的服务器。

4 个赞

这就是问题所在。直接输入完整名称,不要有空格或尖括号。

现在你的 app.yml 文件已经损坏了。最简单的办法是

rm containers/app.yml

然后重新开始。

4 个赞

我怀疑他的意思是他在替换真实域名时将其放在了“帖子”中的<>之间(参见 https://meta.discourse.org/raw/272567/1)。

2 个赞

他说他正在为另一个应用程序使用此域,我认为最好的方法是设置一个子域。否则,将不得不手动设置 Nginx 来在资源路由中同时为之前的应用程序和 Discourse 提供服务。

1 个赞

是的 - 我在说帖子

是的,更多地考虑 Nginx 解决方案,但我不确定是否有任何内部配置。

谢谢 @italo。我解决了大部分问题,目前卡在邮件配置上。

1 个赞

很高兴我能帮到您!:slightly_smiling_face:

对于电子邮件设置,您需要一个 SMTP 服务。这份教程列出了 Discourse 推荐的服务。虽然 Gmail、Outlook 和 Yahoo 都有 SMTP 选项,但它们不支持事务性电子邮件,而这是必需的。