.png)
Ich versuche, eine Instanz von GhostCMS auf meinem Debian 10 (Buster)-Server zu starten. Ich wollte dies mit einem Apache (v2.4.38) Reverse-Proxy tun. Für die Ghost-Einrichtung habe ich ghost-cli verwendet, wie in den Dokumenten beschrieben. ( ghost install && ghost start
) und es hat mehr oder weniger gut funktioniert (abgesehen vom Nginx-Konfigurationsteil und daher dem LetsEncrypt-Teil – den ich später manuell gestartet habe).
Meine Apache-Konfiguration für HTTP sieht wie folgt aus:
<VirtualHost *:80>
DocumentRoot /var/www/ghost
ServerName blog.domain.xyz
ServerAlias www.blog.domain.xyz
ProxyPreserveHost On
ProxyRequests Off
ProxyPass / https://127.0.0.1:2368/
ProxyPassReverse / https://127.0.0.1:2368/
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>
und meine Apache-Konfiguration für HTTPS sieht folgendermaßen aus:
<IfModule mod_ssl.c>
<VirtualHost *:443>
DocumentRoot /var/www/ghost
ServerName blog.domain.xyz
ServerAlias www.blog.domain.xyz
ProxyPreserveHost On
ProxyRequests Off
SSLEngine On
SSLProxyEngine on
SSLProxyVerify none
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
SSLProxyCheckPeerExpire off
ProxyPass / https://127.0.0.1:2368/
ProxyPassReverse / https://127.0.0.1:2368/
ErrorLog ${APACHE_LOG_DIR}/blog.domain.xyz_error.log
CustomLog ${APACHE_LOG_DIR}/blog.domain.xyz_access.log combined
RewriteCond %{SERVER_NAME} =blog.domain.xyz [OR]
RewriteCond %{SERVER_NAME} =www.blog.domain.xyz
SSLCertificateFile /etc/letsencrypt/live/blog.domain.xyz/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/blog.domain.xyz/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
Zu Ihrer Information: Alle Seiten sind mit dem Konfigurationsnamen a2ensite aktiviert und Ghost läuft immer noch auf seinem Standardport (localhost:2368).
Immer wenn ich versuche, die Seite zu laden, erhalte ich einen HTTP 500-Proxy-Fehler mit dem Grund:Error during SSL Handshake with remote server
Ich habe bereits einige Tutorials ausprobiert, z. B.https://www.codersbistro.com/blog/ghost-mit-apache-http-server-einrichten/aber sie konnten mir immer noch nicht helfen.
Hoffentlich kann mir jemand von Euch einen guten Tipp geben :-)
Antwort1
Ich habe bereits einige Tutorials ausprobiert, z. B.https://www.codersbistro.com/blog/ghost-mit-apache-http-server-einrichten/aber sie konnten mir immer noch nicht helfen.
Das Tutorial umfasst folgenden Teil:
ProxyPass / http://localhost:2368/
ProxyPassReverse / http://localhost:2368/
Im Gegensatz dazu enthält Ihre Konfiguration Folgendes
ProxyPass / https://127.0.0.1:2368/
ProxyPassReverse / https://127.0.0.1:2368/
Merken Sie den Unterschied? Sie versuchen, den internen Server auf Port 2368 mit https zu erreichen, während es im Tutorial mit http geschieht. Letzteres ist wahrscheinlich die richtige Methode. Beachten Sie, dass die https-Verarbeitung von Apache und nicht vom internen CMS-Server durchgeführt wird, der im Gegensatz zu Apache nicht von außerhalb des Hosts erreichbar sein sollte.