Apache2 detrás de NGINX: MOD_REWRITE solo funciona sin HTTPS

Apache2 detrás de NGINX: MOD_REWRITE solo funciona sin HTTPS

Durante días no puedo entender el siguiente problema:

Tenemos una aplicación (Faveo) que tienedos requisitospara pasar por el asistente de configuración:

HTTPS y MOD_REWRITE.

Faveo se ejecuta en Apache2 con un ReverseProxy delante en nuestra DMZ.


Si ejecuto nuestro ReverseProxy con un simple

location / {
          proxy_pass http://XXX.XXX.XXX.XXX;
}

mod_reescritura(que está habilitado Apache-Side, que sirve a Faveo) parecetrabajary el Faveo-Wizard se vuelve verde.

Sin embargo -La aplicación esnoservido conHTTPS.

Por lo tanto, no puedo hacer clic en "Continuar": ¡Haz click en mi! (http; mod_reescritura)


Si ahora recorro los siguientes argumentos:

location / {
          proxy_pass http://xxx.xxx.xxx.xxx;

          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header host $http_host;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

Faveo ahora se llamacon HTTPS, peromod_reescritura No funcionaesta vez: ¡Haz click en mi! (HTTPS; sin mod_rewrite) Esto tampoco permite hacer clic en "continuar".

¿Tienes alguna idea? ¿Cómo puedo pasar HTTPS a Apache y aún poder usar mod_rewrite en el lado de Apache?

Configuración de NGINX:

server {
        listen       80;
        server_name helpdesk.someurl.de;
        return 301 https://$server_name$request_uri;
}

server {
        listen       443 ssl http2;
        ssl_protocols TLSv1.2;
        server_name helpdesk.someurl.de;

        # Enable SSL
        ssl                     on;
        ssl_certificate      /etc/letsencrypt/live/someurl.de/fullchain.pem;
        ssl_certificate_key  /etc/letsencrypt/live/someurl.de/privkey.pem;

        client_max_body_size    50M;
        ssl_session_timeout     5m;

        # Set global proxy settings
        proxy_read_timeout      360;

       location / {
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header Host $http_host;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
          proxy_pass http://XXX.XXX.XXX.XXX/;
        }

        error_log /var/log/nginx/helpdesk-ssl-error.log;
        access_log /var/log/nginx/helpdesk-ssl-access.log;
}

Apache2:

<VirtualHost *:80>
    ServerName helpdesk.someurl.de

    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/faveo/public

    <Directory /var/www/faveo/public>
        Options Indexes FollowSymLinks
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Si ahora borro

proxy_set_header Host $http_host;

Desde NGINX-Config, HTTPS está deshabilitado pero mod_rewrite funciona.

Si está habilitado, recibo HTTPS, pero no mod_rewrite.

información relacionada