无法访问互联网时出现“欢迎使用 nginx”

Hello,
I have the same problem with nginx and discourse. Always getting the “welcome to nginx"-Page instead of discourse.
DNS and Mail server are setup and I’m hosting on-prem and not in the cloud.
I used this guide: https://github.com/discourse/discourse/blob/master/docs/INSTALL-cloud.md

Fresh installation from Ubuntu:

Distributor ID: Ubuntu
Description:    Ubuntu 19.10
Release:        19.10
Codename:       eoan

lsof -i:80
COMMAND     PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
docker-pr 23296 root    4u  IPv6  62651      0t0  TCP *:http (LISTEN)

netstat -plnt
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN      819/systemd-resolve
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      906/sshd
tcp6       0      0 :::80                   :::*                    LISTEN      23296/docker-proxy
tcp6       0      0 :::22                   :::*                    LISTEN      906/sshd
tcp6       0      0 :::443                  :::*                    LISTEN      23283/docker-proxy

please help me :smile:

I’d recommend using 18.04LTS and not a release that’s going to be unsupported soon.

What does docker ps say?

docker ps
CONTAINER ID        IMAGE                 COMMAND             CREATED             STATUS              PORTS                                      NAMES
01b8b484088b        local_discourse/app   "/sbin/boot"        12 hours ago        Up 12 hours         0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp   app

I also tried Debian 9 and 10.
I will also try Ubuntu 18.04LTS and write down the result

If you keep wiping and rebuilding let’s encrypt is going to temporarily stop issuing certificates.

The server has access to the Internet, but is not accessible from the Internet and the DNS ends with .lan
Soo… does letsencrypt play a role at all, because authority can’t check it from the Internet?

I installed Ubuntu 18.04LTS and I have the same problem.

lsb_release -a:
Distributor ID: Ubuntu
Description:    Ubuntu 18.04.4 LTS
Release:        18.04
Codename:       bionic

lsof -i:80
COMMAND    PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
docker-pr 1598 root    4u  IPv6  21087      0t0  TCP *:http (LISTEN)

netstat -tulpn:
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 127.0.0.53:53           0.0.0.0:*               LISTEN      854/systemd-resolve
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1233/sshd
tcp6       0      0 :::80                   :::*                    LISTEN      1598/docker-proxy
tcp6       0      0 :::22                   :::*                    LISTEN      1233/sshd
tcp6       0      0 :::443                  :::*                    LISTEN      1583/docker-proxy
udp        0      0 127.0.0.53:53           0.0.0.0:*                           854/systemd-resolve

docker ps:
CONTAINER ID        IMAGE                 COMMAND             CREATED             STATUS              PORTS                                      NAMES
798e15496293        local_discourse/app   "/sbin/boot"        2 hours ago         Up 3 minutes        0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp   app

From the Install Guide

:bell: Discourse will not work from an IP address, you must own a domain name such as example.com to proceed.

If you’re not using a publicly valid FQDN then the normal install route won’t work for you. Local DNS entries and domain names aren’t interchangeable here. Let’s Encrypt will fail because the DNS entry isn’t valid.

You’re going to need to modify the app.yml by hand to eliminate HTTPS and Let’s Encrypt. Comment out the unnecessary templates and the entry which exposes port 443.

Unless you plan on issuing a self-signed certificate you will be serving everything over HTTP.

4 个赞

Hello Stephen!

I have the same problem with Fun Tec. I have my own domain and I don’t think it is the problem of letsencrypt. Here is my logs after command sudo ./launcher restart app. Can you find some useful information?

Shutting Down
run-parts: executing /etc/runit/3.d/01-nginx
ok: down: nginx: 0s, normally up, want up
run-parts: executing /etc/runit/3.d/02-unicorn
(2165) exiting
ok: down: unicorn: 1s, normally up
run-parts: executing /etc/runit/3.d/10-redis
ok: down: redis: 0s, normally up
run-parts: executing /etc/runit/3.d/99-postgres
ok: down: postgres: 0s, normally up
ok: down: nginx: 2s, normally up
ok: down: postgres: 0s, normally up
ok: down: redis: 1s, normally up
ok: down: unicorn: 2s, normally up
ok: down: cron: 0s, normally up
ok: down: rsyslog: 0s, normally up
run-parts: executing /etc/runit/1.d/00-ensure-links
run-parts: executing /etc/runit/1.d/00-fix-var-logs
run-parts: executing /etc/runit/1.d/01-cleanup-web-pids
run-parts: executing /etc/runit/1.d/anacron
run-parts: executing /etc/runit/1.d/cleanup-pids
Cleaning stale PID files
run-parts: executing /etc/runit/1.d/copy-env
run-parts: executing /etc/runit/1.d/letsencrypt
[Wed 16 Dec 2020 01:26:10 PM UTC] Using CA: https://acme-v02.api.letsencrypt.org/directory
[Wed 16 Dec 2020 01:26:10 PM UTC] Single domain='a.mapengfei.xyz'
[Wed 16 Dec 2020 01:26:10 PM UTC] Getting domain auth token for each domain

Hi FunTec!

I think you haven’t isntall netcat. I hope it will help you!

1 个赞

您好。

我遇到了完全相同的问题。

我从一个全新的 Ubuntu 安装开始:20.04.3 LTS

澄清一下,没有。之前没有安装 Nginx。

这是安装日志的链接:install

如何解决,谢谢。

我在这里遇到了同样的问题。
全新安装的 Ubuntu 24 LTS。
Bootstrap 完成后,出现 Nginx 默认页面。
当我运行 ./discourse-doctor 时,我得到:

DISCOURSE DOCTOR Fri Apr 25 06:19:55 PM UTC 2025
OS: Linux talk 6.8.0-58-generic #60-Ubuntu SMP PREEMPT_DYNAMIC Fri Mar 14 18:29:48 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux


Found containers/app.yml

==================== YML SETTINGS ====================
DISCOURSE_HOSTNAME=talk.technospider.com
SMTP_ADDRESS=smtppro.zoho.com
DEVELOPER_EMAILS=REDACTED 
SMTP_PASSWORD=REDACTED 
SMTP_PORT=587
SMTP_USER_NAME=david@technospider.com
LETSENCRYPT_ACCOUNT_EMAIL=REDACTED 

==================== DOCKER INFO ====================
DOCKER VERSION: Docker version 26.1.3, build 26.1.3-0ubuntu1~24.04.1

DOCKER PROCESSES (docker ps -a)

CONTAINER ID   IMAGE                 COMMAND        CREATED          STATUS          PORTS                                           
                           NAMES
394018ecf271   local_discourse/app   “/sbin/boot”   21 minutes ago   Up 21 minutes   0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->
443/tcp, :::443->443/tcp   app


Discourse container app is running


==================== PLUGINS ====================
          - git clone https://github.com/discourse/docker_manager.git

No non-official plugins detected.

See https://github.com/discourse/discourse/blob/main/lib/plugin/metadata.rb for the official list.

========================================
Discourse version at talk.technospider.com: NOT FOUND
Discourse version at localhost: NOT FOUND


==================== MEMORY INFORMATION ====================
OS: Linux
RAM (MB): 4055

               total        used        free      shared  buff/cache   available
Mem:            3867        1695         174          56        2345        2172
Swap:           3866          98        3768

==================== DISK SPACE CHECK ====================
---------- OS Disk Space ----------
Filesystem                         Size  Used Avail Use% Mounted on
/dev/mapper/ubuntu--vg-ubuntu--lv   19G   12G  6.0G  66% /

==================== DISK INFORMATION ====================
Disk /dev/loop0: 44.45 MiB, 46604288 bytes, 91024 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk /dev/loop1: 73.89 MiB, 77475840 bytes, 151320 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk /dev/loop2: 144.46 MiB, 151478272 bytes, 295856 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk /dev/sda: 40 GiB, 42949672960 bytes, 83886080 sectors
Disk model: VMware Virtual S
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 57115BC0-AFA9-4902-9910-BB09315092BA

Device       Start      End  Sectors  Size Type
/dev/sda1     2048  2203647  2201600    1G EFI System
/dev/sda2  2203648  6397951  4194304    2G Linux filesystem
/dev/sda3  6397952 83884031 77486080 36.9G Linux filesystem

Disk /dev/mapper/ubuntu--vg-ubuntu--lv: 18.47 GiB, 19834863616 bytes, 38739968 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

==================== END DISK INFORMATION ====================

==================== MAIL TEST ====================
For a robust test, get an address from http://www.mail-tester.com/
Sending mail to REDACTED  . . 
Testing sending to technospider@icloud.com using smtppro.zoho.com:587, username:david@technospider.com with plain auth.
SMTP server connection successful.
Sending to technospider@icloud.com. . . 
Mail accepted by SMTP server.
Message-ID: 9e763c7d-b64d-4119-8f74-edd47154a799@talk.technospider.com

If you do not receive the message, check your SPAM folder
or test again using a service like http://www.mail-tester.com/.

If the message is not delivered it is not a problem with Discourse.
Check the SMTP server logs for the above Message ID to see why it
failed to deliver the message.

==================== DONE! ====================

并且测试邮件如期送达。
我觉得我离成功很近了。

docker ps:

394018ecf271   local_discourse/app   “/sbin/boot”   47 minutes ago   Up 47 minutes   0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->
443/tcp, :::443->443/tcp   app

服务器上没有安装 nginx 或 apache2。

为了澄清一下,看起来 nginx 页面仅在从主机计算机访问主机名时可用,网络上的任何其他计算机都会收到连接失败的错误。

您运行了 ./discourse-setup 吗?连接测试通过了吗?

是的,./discourse-setup 是引导顺序,对吧?我认为如果我没有运行它,容器就不会运行。我遵循了此处的说明,大约 7 分钟后,我看到了“欢迎使用 NGINX”页面。

您希望我运行特定的连接测试吗?设置过程中输出了太多内容,我无法全部捕获。