RÉSOLU : désactivation du serveur nginx, exécution de discourse-setup, réactivation du serveur nginx et reconstruction de l’application.
Bonjour. J’essaie d’installer Discourse en suivant ce guide.
Voici mon fichier app.yml modifié (copié depuis les dossiers de Discourse et modifié selon les guides) :
templates: - "templates/postgres.template.yml" - "templates/redis.template.yml" - "templates/web.template.yml" - "templates/web.ratelimited.template.yml" - "templates/web.socketed.template.yml" ## Décommentez ces deux lignes si vous souhaitez ajouter Lets Encrypt (https) # - "templates/web.ssl.template.yml" # - "templates/web.letsencrypt.ssl.template.yml" ## quels ports TCP/IP ce conteneur doit-il exposer ? ## Si vous souhaitez que Discourse partage un port avec un autre serveur web comme Apache ou nginx, ## consultez https://meta.discourse.org/t/17247 pour plus de détails expose: # - "80:80" # http # - "2222:22" # - "443:443" # https
Voici mon bloc nginx de discourse.conf :
server {
server_name forum.myhost; # listen [::]:443 ssl http2 ipv6only=on; # géré par Certbot listen 443 ssl http2; # géré par Certbot ssl_certificate /etc/letsencrypt/live/forum.myhost/fullchain.pem; # géré par Certbot ssl_certificate_key /etc/letsencrypt/live/forum.myhost/privkey.pem; # géré par Certbot include /etc/letsencrypt/options-ssl-nginx.conf; # géré par Certbot ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # géré par Certbot ssl on; http2_idle_timeout 5m; # augmenté de la valeur par défaut de 3m ; location / { proxy_pass http://unix:/var/discourse/shared/standalone/nginx.http.sock; proxy_set_header Host $http_host; proxy_http_version 1.1; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto https; proxy_set_header X-Real-IP $remote_addr; } } server { if ($host = forum.myhost) { return 301 https://$host$request_uri; } # géré par Certbot server_name www.forum.myhost; return 301 $scheme://forum.myhost$request_uri; listen 80; listen [::]:80; server_name forum.myhost; return 404; # géré par Certbot }
Le serveur fonctionne avec SSL (Certbot installé) et redirige le HTTP vers le HTTPS sur le domaine principal, mais le domaine du forum affiche une erreur 502 Gateway. J’utilise Cloudflare (sans les options de performance ou de sécurité activées).
Toute aide sera très appréciée. Je ne peux pas exécuter discourse-setup car il affiche « Google : “ouvrir les ports VOTRE SERVICE CLOUD” pour obtenir des informations sur la résolution de ce problème. »
J’ai également vérifié le pare-feu.
MODIFICATION : Peut-être un problème avec cette ligne ? (Je ne vois pas ce fichier dans le dossier)
proxy_pass http://unix:/var/discourse/shared/standalone/nginx.http.sock;