Hallo, ich versuche zum ersten Mal, Discourse auf einer DigitalOcean Linux VPS zu installieren. Diese VPS hostet mehrere Websites auf Nginx, und ich habe das Tutorial befolgt, wie man Discourse auf mehreren Websites installiert: Run other websites on the same machine as Discourse - #182 by angus
Discourse wurde installiert und lief einwandfrei. Doch als ich ein Admin-Konto erstelle, erhalte ich keine E-Mail. Ich habe dieses Tutorial befolgt: crunchify[dot]com/how-to-setup-email-for-discourse-forum-with-google-apps-smtp-relay-right-way/
Mein Server verwendet Postfix, um E-Mails an Google G Suite weiterzuleiten, und funktioniert einwandfrei mit WordPress und MyBB. Das oben genannte Tutorial erwähnt jedoch kein Postfix, und ich gehe davon aus, dass es eine direkte Verbindung zu Google G Suite herstellt.
Ich habe diesen Leitfaden zur Fehlerbehebung bei E-Mail-Problemen befolgt: meta.discourse[dot]org/t/troubleshooting-email-on-a-new-discourse-install/16326
Ich kann eine Telnet-Verbindung zum SMTP-Relay herstellen:
$ sudo telnet smtp-relay.gmail.com 587
Trying 2607:f8b0:400d:c04::1c...
Connected to smtp-relay.gmail.com.
Escape character is '^]'.
220 smtp-relay.gmail.com ESMTP n18sm708840ooi.26 - gsmtp
Das Produktions-Log zeigt Folgendes:
Rendering layouts/email_template.html.erb
Rendered layouts/email_template.html.erb (Duration: 0.1ms | Allocations: 32)
Delivered mail cf23dab4-3e43-421e-8e54-228489c58874@forums.neuronootropic.org (610.1ms)
Job exception: end of file reached
Rendering layouts/email_template.html.erb
Rendered layouts/email_template.html.erb (Duration: 0.2ms | Allocations: 32)
Delivered mail a092f703-b590-4792-bd73-d9e4700c3e3c@forums.neuronootropic.org (261.1ms)
Job exception: end of file reached
Ich habe versucht, die E-Mail in der app.yml-Konfigurationsdatei auf noreply@forums.neuronootropic.org zu setzen, da ich weiß, dass diese E-Mail funktioniert, aber es ist das Gleiche. Es werden immer noch E-Mails mit diesen Nummern gesendet, ich vermute, es handelt sich um eine Art Verschlüsselung? Sie kommen nie in meinem Posteingang an.
Mein anderes Problem betrifft Nginx. Es hat gestern noch einwandfrei funktioniert, aber heute habe ich in der app.yml-Konfigurationsdatei herumgespielt und die URL auf ein Unterverzeichnis statt auf eine Subdomain gesetzt.
Ich wollte nur testen, ob vielleicht die Subdomain das Problem mit der nicht funktionierenden E-Mail verursacht, da mein aktuelles Forum, MyBB, in einem Unterverzeichnis läuft und keine E-Mail-Probleme hat.
Dies scheint Nginx beschädigt zu haben. Aus irgendeinem Grund versucht Nginx nun, ein SSL-Zertifikat aus dem Discourse-Verzeichnis zu laden, obwohl dies in meiner Nginx-Konfigurationsdatei nicht angegeben ist. Hier ist der Fehler:
$ sudo nginx -t
nginx: [emerg] BIO_new_file("/var/discourse/shared/standalone/ssl/ssl.crt") failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen('/var/discourse/shared/standalone/ssl/ssl.crt','r') error:2006D080:BIO routines:BIO_new_file:no such file)
nginx: configuration file /etc/nginx/nginx.conf test failed
Ich verwende Let’s Encrypt für das SSL-Zertifikat, und es funktioniert einwandfrei. Nginx hatte gestern noch keine Probleme, bevor ich versucht habe, Discourse in einem Unterverzeichnis statt auf einer Subdomain auszuführen.
Jede Hilfe wäre willkommen.