Discourse 设置:假设已安装 nc

Ran through the install using discourse-setup (I don’t think I ever have yet, so no time like the present!) and the following error showed up:

Checking your domain name . . .
WARNING:: This server does not appear to be accessible at dotest.example.net:443.

A connection to http://dotest.example.net (port 80) also fails.

This suggests that dotest.example.net resolves to the wrong IP address
or that traffic is not being routed to your server.

Google: "open ports YOUR CLOUD SERVICE" for information for resolving this problem.

You should probably answer "n" at the next prompt and disable Let's Encrypt.

This test might not work for all situations,
so if you can access Discourse at http://dotest.example.net, you might try anyway.

I believe this happened as nc isn’t installed so it couldn’t properly run the test. We should ensure nc is available before erroring out on this check.

3 个赞

I totally believe that I assumed that nc was installed and that on some OSs it’s not.

The messages do suggest that it could be wrong. Did Let’s Encrypt work?

What OS is this? What cloud service?

2 个赞

Fresh debian-9 on DO.

Everything else worked A-OK and it’s up and running great! :+1:

3 个赞

Hmm. Then the question becomes, does discourse-doctor install nc just for one test that might not be necessary, or just say, “well, you don’t have nc, so you’re on your own to see that you have ports open and mapped correctly.”?

I don’t like installing software if it’s not necessary. I think I’ll change the message to recommend installing nc if they want it.

@codinghorror? @mpalmer want to weigh in?

Wasn’t this addressed in a different way by @supermathie?

I’m all for this :+1:

I addressed the problem where Discourse’s email test rake task didn’t properly pick up the STARTTLS option. This is separate.

2 个赞

In that case either stop the script and tell them to re-run with nc installed, or print a warning that the check was skipped because nc was not installed?

2 个赞

I was going to let the script continue with the warning, adding the bit about nc. As it is, it does work, it just suggests that it probably won’t.

4 个赞

我们可以将此标记为已解决吗,@pfaffman

好吧,六个月过去了。我并没有添加“你没有 nc,所以我无法测试你的端口”这样的提示,但也没有其他人抱怨。也许这段文字:

     在 Google 上搜索“开放端口 YOUR CLOUD SERVICE”以获取解决此问题的相关信息。
    
     在下一个提示处,你很可能应该输入“n”,并禁用 Let's Encrypt。
    
     此测试可能并不适用于所有情况,
     因此,如果你可以通过 http://$HOST 访问 Discourse,不妨试一试。

已经足够好了。这从来不是一个 :bug:,而只是对那些具备足够系统管理常识、不想使用 Ubuntu 的人来说有点烦人。它在 Ubuntu 上按预期工作(我尚未检查其他发行版)。我倾向于让这件事就此作罢。

5 个赞