n8n apache2 reverse proxy fix websockets

<IfModule mod_ssl.c>
<VirtualHost *:443>
        SSLEngine off
        ServerAdmin webmaster@karloluiten.nl
        ServerName n8n.karloluiten.nl
        DocumentRoot "/var/www/html/"
        ErrorLog "${APACHE_LOG_DIR}/error_n8n.servar_nl.log"
        CustomLog ${APACHE_LOG_DIR}/access_n8n.servar_nl.log combined

        RequestHeader set X-Forwarded-Proto https
        RemoteIPHeader X-Forwarded-For
        RequestHeader set X-Forwarded-Host "%{SERVER_NAME}e"


ProxyPreserveHost Off
ProxyPass        / http://10.0.40.54:5678/
ProxyPassReverse / http://10.0.40.54:5678/

RewriteEngine On
RewriteCond %{HTTP:Upgrade} =websocket [NC]
RewriteRule /(.*)           ws://10.0.40.54:5678/$1 [P,L]
RewriteCond %{HTTP:Upgrade} !=websocket [NC]
RewriteRule /(.*)           http://10.0.40.54:5678/$1 [P,L]
ProxyPassReverse /          https://n8n.karloluiten.nl



SSLCertificateFile /etc/letsencrypt/live/n8n.karloluiten.nl/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/n8n.karloluiten.nl/privkey.pem
Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>
</IfModule>

Obviously fill in your own details/domains/ip.

Also for env vars:

N8N_BASIC_AUTH_ACTIVE=true
N8N_BASIC_AUTH_USER=admin
N8N_BASIC_AUTH_PASSWORD=xxx
N8N_SECURE_COOKIE=false
WEBHOOK_URL=https://n8n.karloluiten.nl/
N8N_PROXY_HOPS=1