Unable To Connect/Connection Refused due to https certificates

We successfully installed Discourse through DigitalOcean using the following guide:

discourse/docs/INSTALL-cloud.md at main · discourse/discourse · GitHub

Our DNS is fully propagated, and we also installed our SSL CERTS per the following guide:

When browsing to our Discourse installation via IP or domain name, we get the following message:

This site can’t be reached

XX.XX.XX.XX refused to connect.
Try:
Checking the connection
Checking the proxy and the firewall
ERR_CONNECTION_REFUSED

What could be the problem?

Almost certainly a SSL problem. Try rebuilding with plain HTTP first to make sure everything is working before adding on the complexity of HTTPS.

Using let’s encrypt is an easy way to get ssl.

… thanks for your help.

I am running into this same issue, To rebuild with plain HTTP, does that require just commenting out the SSL template line in app.yml?

Yes, but browsers that have visited your site will refuse to connect. You really should use https.

For anyone that face it in the future, make sure to not exceed the rate limit of LetsEncrypt:

You can see if it was exceeded in the logs:

./launcher logs app

Ich habe exakt denselben Fehler in Chrome erhalten.

In meinem Fall waren mehrere Konfigurationen falsch eingestellt: einige waren Discourse-Einstellungen, andere betrafen die Konfiguration des Hosting-Servers. Hier ist meine Checkliste als Referenz für dich:

  1. Prüfe /var/discourse/containers/app.yml

(Folge diesem Beitrag: Allow SSL / HTTPS for your Discourse Docker setup)

Stelle sicher, dass du entweder HTTPS/HTTP zulässt (Port 443 öffnen, SSL-bezogene Template-Konfiguration und Let’s-Encrypt-bezogene Konfigurationen auskommentieren) oder nur HTTP-Anfragen (Port 443 blockieren, SSL-bezogene Template-Konfiguration und Let’s-Encrypt-bezogene Konfigurationen auskommentieren).

Wenn Änderungen an app.yml vorgenommen wurden, führe ./launcher rebuild app aus, um die aktualisierten Konfigurationen zu aktivieren.

  1. Führe ./launcher logs app aus.

Wenn du wie ich häufig beim Erstellen eines funktionsfähigen Discourse-Servers scheiterst, kann es sein, dass du gleichzeitig zu viele Let’s-Encrypt-Zertifikate angefordert hast und damit das Limit überschritten hast.

Dann wird ./launcher logs app eine json.-Ausgabe mit einem 429-Fehler anzeigen.

  1. Prüfe die Einstellungen deiner „Security Group

Ich hatte das gleiche Problem – das Limit für Zertifikate war überschritten.

Gelöst, indem ich deinen Schritt #1 befolgt habe (die beiden SSL-Vorlagen in app.yml auskommentiert) und die Seite nach dem Neuaufbau in einem anderen Browser geöffnet habe.

Ich gehe davon aus, dass ich SSL wieder aktivieren kann, sobald eine Woche vergangen ist.

Konntet ihr euch nach einer Woche verbinden?