502 Bad Gateway e Discourse versione NON TROVATA

Ho seguito le istruzioni per installare Discourse su CentOS 7.

Ho configurato correttamente l’email e ricevuto un messaggio di prova. Tuttavia, ricevo sempre l’errore 502 Bad Gateway.

In precedenza avevo avuto un problema con ssl_stapling che ho risolto includendo il file del certificato della catena completa.

Vedo che l’app Docker è in ascolto sulla porta personalizzata 25654:

0.0.0.0:25654->80/tcp, :::25654->80/tcp

Ricevo questi errori nginx che ritengo causati dal fatto che l’app Discourse non è in ascolto.

connect() failed (111: Connection refused) while connecting to upstream, client: x.x.x.x, server: xxxx, request: “GET / HTTP/2.0”, upstream: “http://x.x.x.x:25654/”, host: “xxxx”

Ho voci DNS che puntano sia [MY_DOMAIN].net sia discourse.[MY_DOMAIN].net al corretto indirizzo IP.

1 Mi Piace

Benvenuti nella comunità Meta Discourse :slightly_smiling_face:

Spesso aiuto con problemi di installazione SSL nella comunità di Let’s Encrypt. Una cosa che ho notato è che il tuo secondo blocco server manca dell’istruzione di ascolto IPv6:

listen [::]:443 ssl http2;

Senza di essa, non sono sicuro dove finirebbe il tuo traffico IPv6.

:man_shrugging:

1 Mi Piace

Grazie mille, Jonathan. Questo ha risolto il problema del rifiuto della connessione.

Ora, quando provo il mio URL di Discourse, vengo reindirizzato alla pagina “Benvenuto su CentOS” e ricevo il seguente log di errore.

nginx settings2

Discourse doctor indica ancora che la versione NON è stata trovata.

1 Mi Piace

Vedo tramite netstat di avere due processi docker-proxy sulla porta 25654, uno per tcp e uno per tcp6. Mi chiedo se questo sia un problema, dato che non lo vedo negli screenshot di altri tutorial.

Poiché CentOS sembra richiedere una configurazione diversa, ho seguito le impostazioni di nginx presenti in questo tutorial:

Ho inoltre apportato alcune modifiche aggiuntive a app.yml e alla configurazione di nginx, come indicato in questo tutorial, poiché desidero che MYDOMAIN.net e discourse.MYDOMAIN.net siano eseguiti sulla stessa macchina tramite nginx:

Ad esempio, ho attivato il template per i WebSocket.

Tuttavia, ho letto in un commento di quel tutorial che, se si utilizzano i socket, è necessario commentare tutte le porte esposte; tuttavia, seguendo la prima configurazione è stata aggiunta una voce per “25654:80” in modo che ascolti il traffico inoltrato a 25654 da nginx.

Mi scuso se si tratta di un problema di configurazione di base: il forwarding delle porte, i socket e la configurazione di rete in generale non sono il mio punto di forza.

1 Mi Piace

Queste sono configurazioni avanzate. Per chi non ha esperienza con l’installazione di proxy inversi e la gestione di Docker, consigliamo di seguire la nostra installazione standard ufficiale di Discourse. Questo presuppone un server completamente nuovo e che Discourse sia l’unica applicazione web presente.

3 Mi Piace