Page 1 of 1

[ TUTORIAL / BLUEPRINT] KeyHelp Apache2 als Reverse-Proxy für Node.js mit SSL

Posted: Mon 11. Oct 2021, 21:01
by pasib
Hallo zusammen!

Nachdem ich seit geraumer Zeit Node.js für mich im Backend entdeckt habe, habe ich mir eine voll umfängliche Apache2 Konfiguration zusammengeschustert, um meine Node-Webserver über KeyHelp lazufen zu lassen.
Die wollte ich nur mal mit euch teilen:

Code: Select all

<IfModule mod_proxy.c>
        ProxyPass /.well-known/acme-challenge !
</IfModule>

Alias /.well-known/acme-challenge /home/keyhelp/www/.well-known/acme-challenge


ProxyPass / http://127.0.0.1:3030/
ProxyPassReverse / http://127.0.0.1:3030/

# Required for websockets
RewriteEngine on
RewriteCond %{HTTP:UPGRADE} ^WebSocket$ [NC]
RewriteCond %{HTTP:CONNECTION} ^Upgrade$ [NC]
RewriteRule .* ws://localhost:4567%{REQUEST_URI} [P]

# Required to tell its external port
RequestHeader set X-Forwarded-Port "443"
RequestHeader set X-Forwarded-Proto "https"
Je nach Port müsst ihr die folgenden beiden Zeilen anpassen,
ändert den Port 3030 zu eurem benutzen Port. z.B 6666:

Code: Select all

ProxyPass / http://127.0.0.1:6666/
ProxyPassReverse / http://127.0.0.1:6666/
zusätzlich dazu solltet ihr bei der Verwendung von Websockets folgende Zeile beachten:

Code: Select all

RewriteRule .* ws://localhost:4567%{REQUEST_URI} [P]
Dort muss ggf. auch der Port angepasst werden.

Eingefügt werden muss das Snippet unter:

Code: Select all

 Domains -> example.com -> Optionen -> Apache-Einstellungen
Bei HTTP sowie HTTPS.
Solltet ihr diese Einstellung nicht finden, liegt es sehr wahrscheinlich daran, dass ihr nicht als Admin auf die Domain-Einstellungen zugreift. Also nochmal mit dem Admin-KeyHelp-User probieren.

Als Zertifikat kann ein Let's-Encrypt-Zertifikat verwendet werden.


Nach wenigen Sekunden oder Minuten sollte das Zertifikat und der Reverse-Proxy funktionieren. :shock:

CORS-Einstellungen konnte ich so auch alle via Node-Server direkt einstellen und nicht mehr über Apache2.

Re: [ TUTORIAL / BLUEPRINT] KeyHelp Domain als Reverse-Proxy für Node.js mit SSL

Posted: Mon 11. Oct 2021, 21:31
by OlliTheDarkness
Super :)

Ich hofe das es in deinem Sinne ist, dass ich den Beitrag gemeldet hab um ihn in die Bastelecke zu überführen =)

Da fühlt er sich besser aufgehobnenm =)

Re: [ TUTORIAL / BLUEPRINT] KeyHelp Domain als Reverse-Proxy für Node.js mit SSL

Posted: Tue 12. Oct 2021, 08:47
by mhagge
Ich habs verschoben