GELÖST: Nginx-Server deaktivieren, discourse-setup ausführen, Nginx-Server wieder aktivieren und die App neu aufbauen.
Hallo zusammen. Ich versuche, Discourse gemäß dieser Anleitung zu installieren.
Dies ist meine bearbeitete app.yml (aus den Discourse-Ordern kopiert und gemäß den Anleitungen bearbeitet):
templates: - "templates/postgres.template.yml" - "templates/redis.template.yml" - "templates/web.template.yml" - "templates/web.ratelimited.template.yml" - "templates/web.socketed.template.yml" ## Diese beiden Zeilen auskommentieren, wenn Sie Lets Encrypt (https) hinzufügen möchten # - "templates/web.ssl.template.yml" # - "templates/web.letsencrypt.ssl.template.yml" ## Welche TCP/IP-Ports soll dieser Container exponieren? ## Wenn Sie möchten, dass Discourse einen Port mit einem anderen Webserver wie Apache oder Nginx teilt, ## sehen Sie unter https://meta.discourse.org/t/17247 für Details nach expose: # - "80:80" # http # - "2222:22" # - "443:443" # https
Das ist mein Nginx-Block für discourse.conf:
server {
server_name forum.myhost; # listen [::]:443 ssl http2 ipv6only=on; # verwaltet von Certbot listen 443 ssl http2; # verwaltet von Certbot ssl_certificate /etc/letsencrypt/live/forum.myhost/fullchain.pem; # verwaltet von Certbot ssl_certificate_key /etc/letsencrypt/live/forum.myhost/privkey.pem; # verwaltet von Certbot include /etc/letsencrypt/options-ssl-nginx.conf; # verwaltet von Certbot ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # verwaltet von Certbot ssl on; http2_idle_timeout 5m; # erhöht von der Standardzeit von 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; } # verwaltet von Certbot server_name www.forum.myhost; return 301 $scheme://forum.myhost$request_uri; listen 80; listen [::]:80; server_name forum.myhost; return 404; # verwaltet von Certbot }
Der Server funktioniert mit SSL (Certbot installiert) und leitet HTTP auf HTTPS in der Primärdomain um, aber die Forum-Domain zeigt einen 502 Gateway-Fehler. Ich verwende Cloudflare (ohne aktivierte Leistungs- oder Sicherheitsoptionen).
Jede Art von Hilfe wäre sehr geschätzt. Ich kann discourse-setup nicht ausführen, da es folgende Meldung anzeigt: „Google: ‚open ports YOUR CLOUD SERVICE’ für Informationen zur Lösung dieses Problems."
Ich habe auch die Firewall überprüft.
EDIT: Vielleicht ein Problem mit dieser Zeile? (Ich sehe diese Datei nicht im Ordner)
proxy_pass http://unix:/var/discourse/shared/standalone/nginx.http.sock;