You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users-de@httpd.apache.org by Marcel Wichern <wi...@googlemail.com> on 2018/01/24 08:06:02 UTC
ErrDoc 503 wird dargestellt, obwohl Backendserver erreichbar ist
Guten Morgen,
ich habe ein Problem mit meinem Apache2 (v2.4.25) in einer
Reverse-Proxy Konfiguration.
Es kommt aufgrund von Wartungsarbeiten desöfteren vor, dass ein
Backend-Server nicht erreichbar ist.
In diesem Falle wird ein benutzerdefiniertes 503-Error Dokument eingeblendet.
Leider kommt es dann zu dem Problem, dass das Dokument den
Endanwendern weiterhin angezeigt wird,
obwohl der Backend-Server schon lange wieder läuft.
Meine Konfiguration sieht aus wie folgt:
[...]
ProxyRequests Off
ProxyPreserveHost On
SSLProxyEngine On
# HSTS
Header always set Strict-Transport-Security "max-age=31536000;
includeSubDomains"
ProxyPass /proxy-error/ http://127.0.0.1:81/proxy-error/
ProxyPassReverse /proxy-error/ http://127.0.0.1:81/proxy-error/
ErrorDocument 503 /proxy-error/503-index.html
ProxyPass /shop http://X.X.X.X/shop
ProxyPassReverse /shop http://X.X.X.X/shop
ProxyPass /kba http://X.X.X.X/kba
ProxyPassReverse /kba http://X.X.X.X/kba
Redirect / /shop
[...]
Aufrufe via HTTP werden direkt auf die HTTPS-Seite umgeleitet.
[...]
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^/(.*) https://www.XXX.XX/shop/ [R]
[...]
Der Header stammt aus unserer Entwicklungsabteilung und sieht wie folgt aus:
[...]
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<meta http-equiv="cache-control" content="max-age=0" />
<meta http-equiv="cache-control" content="no-cache" />
<meta http-equiv="expires" content="0" />
<meta http-equiv="expires" content="Tue, 01 Jan 1980 1:00:00 GMT" />
<meta http-equiv="pragma" content="no-cache" />
...
</head>
[...]
Ich habe in der Apache-Konfiguration auch schon "retry=0" hinter
ProxyPass gesetzt, leider besteht das Problem weiterhin.
Gruß
---------------------------------------------------------------------
To unsubscribe, e-mail: users-de-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-de-help@httpd.apache.org
Re: ErrDoc 503 wird dargestellt, obwohl Backendserver erreichbar ist
Posted by Reindl Harald <h....@thelounge.net>.
Am 24.01.2018 um 10:35 schrieb Marcel Wichern:
> Das steht im Log des Proxy:
>
> AH01114: HTTP: failed to make connection to backend: X.X.X.X
Was ja wohl "obwohl Backendserver erreichbar ist" widerspricht...
> Am 24. Januar 2018 um 10:28 schrieb Marcel Wichern
> <wi...@googlemail.com>:
>> Ist der Origin-Server wieder verfügbar und dem Endanwender wird
>> trotzdem das ErrDoc angezeigt, kann dieser durch Drücken von F5 das
>> Laden der eigentlichen Seite erzwingen.
>> Hilft das ggf?!
>>
>> Am 24. Januar 2018 um 10:21 schrieb Reindl Harald <h....@thelounge.net>:
>>>
>>>
>>> Am 24.01.2018 um 10:19 schrieb Marcel Wichern:
>>>
>>> Mir wird das einfach zu mühsam - Irgendwas am Origin-Server führt zu einem
>>> Loop womit der nicht zeitgerecht antwortet und aus Sicht des Proxy halt
>>> nicht erreichbar ist
---------------------------------------------------------------------
To unsubscribe, e-mail: users-de-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-de-help@httpd.apache.org
Re: ErrDoc 503 wird dargestellt, obwohl Backendserver erreichbar ist
Posted by Marcel Wichern <wi...@googlemail.com>.
Das steht im Log des Proxy:
AH01114: HTTP: failed to make connection to backend: X.X.X.X
Am 24. Januar 2018 um 10:28 schrieb Marcel Wichern
<wi...@googlemail.com>:
> Ist der Origin-Server wieder verfügbar und dem Endanwender wird
> trotzdem das ErrDoc angezeigt, kann dieser durch Drücken von F5 das
> Laden der eigentlichen Seite erzwingen.
> Hilft das ggf?!
>
> Am 24. Januar 2018 um 10:21 schrieb Reindl Harald <h....@thelounge.net>:
>>
>>
>> Am 24.01.2018 um 10:19 schrieb Marcel Wichern:
>>
>> Mir wird das einfach zu mühsam - Irgendwas am Origin-Server führt zu einem
>> Loop womit der nicht zeitgerecht antwortet und aus Sicht des Proxy halt
>> nicht erreichbar ist
>>
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-de-unsubscribe@httpd.apache.org
>> For additional commands, e-mail: users-de-help@httpd.apache.org
>>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-de-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-de-help@httpd.apache.org
Re: ErrDoc 503 wird dargestellt, obwohl Backendserver erreichbar ist
Posted by Reindl Harald <h....@thelounge.net>.
Am 24.01.2018 um 10:28 schrieb Marcel Wichern:
> Ist der Origin-Server wieder verfügbar und dem Endanwender wird
> trotzdem das ErrDoc angezeigt, kann dieser durch Drücken von F5 das
> Laden der eigentlichen Seite erzwingen.
> Hilft das ggf?!
Ernsthaft jetzt?
Und das zu erwähnen fällt dir nach 3 Mails ein?
Ja dann liegt es wohl glasklar NICHT am Server sondern am Browsercache
Probiere mal auf beiden Seiten 503-Responses als "nocache" festzulegen
Header set "Cache-Control" "no-cache, no-store" "expr=%{REQUEST_STATUS}
== 503"
Header unset "Expires" "expr=%{REQUEST_STATUS} == 503"
_________________________
Wir spielen ähnliches für Redirects/WAF-Hits
# Kein Caching von Redirects
Header set "Cache-Control" "no-cache, no-store"
"expr=%{REQUEST_STATUS} == 301"
Header unset "Expires" "expr=%{REQUEST_STATUS} == 301"
Header set "Cache-Control" "no-cache, no-store"
"expr=%{REQUEST_STATUS} == 302"
Header unset "Expires" "expr=%{REQUEST_STATUS} == 302"
# Error-Responses nicht auf Proxies cachen
Header set "Cache-Control" "private" "expr=%{REQUEST_STATUS} == 403"
Header unset "Expires" "expr=%{REQUEST_STATUS} == 403"
Header set "Cache-Control" "private" "expr=%{REQUEST_STATUS} == 400"
Header unset "Expires" "expr=%{REQUEST_STATUS} == 400"
> Am 24. Januar 2018 um 10:21 schrieb Reindl Harald <h....@thelounge.net>:
>> Am 24.01.2018 um 10:19 schrieb Marcel Wichern:
>>
>> Mir wird das einfach zu mühsam - Irgendwas am Origin-Server führt zu einem
>> Loop womit der nicht zeitgerecht antwortet und aus Sicht des Proxy halt
>> nicht erreichbar ist
---------------------------------------------------------------------
To unsubscribe, e-mail: users-de-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-de-help@httpd.apache.org
Re: ErrDoc 503 wird dargestellt, obwohl Backendserver erreichbar ist
Posted by Marcel Wichern <wi...@googlemail.com>.
Ist der Origin-Server wieder verfügbar und dem Endanwender wird
trotzdem das ErrDoc angezeigt, kann dieser durch Drücken von F5 das
Laden der eigentlichen Seite erzwingen.
Hilft das ggf?!
Am 24. Januar 2018 um 10:21 schrieb Reindl Harald <h....@thelounge.net>:
>
>
> Am 24.01.2018 um 10:19 schrieb Marcel Wichern:
>
> Mir wird das einfach zu mühsam - Irgendwas am Origin-Server führt zu einem
> Loop womit der nicht zeitgerecht antwortet und aus Sicht des Proxy halt
> nicht erreichbar ist
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-de-unsubscribe@httpd.apache.org
> For additional commands, e-mail: users-de-help@httpd.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-de-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-de-help@httpd.apache.org
Re: ErrDoc 503 wird dargestellt, obwohl Backendserver erreichbar ist
Posted by Reindl Harald <h....@thelounge.net>.
Am 24.01.2018 um 10:19 schrieb Marcel Wichern:
Mir wird das einfach zu mühsam - Irgendwas am Origin-Server führt zu
einem Loop womit der nicht zeitgerecht antwortet und aus Sicht des Proxy
halt nicht erreichbar ist
---------------------------------------------------------------------
To unsubscribe, e-mail: users-de-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-de-help@httpd.apache.org
Re: ErrDoc 503 wird dargestellt, obwohl Backendserver erreichbar ist
Posted by Marcel Wichern <wi...@googlemail.com>.
> Also WO sitzt das da? Proxy oder Origin-Server
>>RewriteEngine On
>> RewriteCond %{HTTPS} !=on
>> RewriteRule ^/(.*) https://www.XXX.XX/shop/ [R]
Die Konfiguration kommt vom Reverse-Proxy.
Am 24. Januar 2018 um 09:49 schrieb Reindl Harald <h....@thelounge.net>:
>
>
> Am 24.01.2018 um 09:24 schrieb Marcel Wichern:
>>
>> Das ErrorDocument für 503 liegt auf dem Reverse-Proxy und wird auch
>> von dem ausgeliefert.
>> Die Logdateien sind unauffällig.
>
>
> Wo das "ErrorDocument" liegt ist mir auch klar
>
> Die Frage war was der Backendserver sagt und ob der einen Redirect triggert
> wenn dein Ziel "http://127.0.0.1:81/proxy-error/" und damit eben NICHT https
> ist während du gleichzeitig "SSLProxyEngine On" setzt was impliziert dass du
> nach hinten bereits die Verschlüsselung brauchst
>
> Also WO sitzt das da? Proxy oder Origin-Server
>> RewriteEngine On
>> RewriteCond %{HTTPS} !=on
>> RewriteRule ^/(.*) https://www.XXX.XX/shop/ [R]
>
> Wenns am Origin-Server sitzt ist es klar wo die Loop herkommt
>
> "SSLProxyEngine On" ist eine Schnapsidee, vom Proxy zum backend auf
> 127.0.0.1 braucht es kein https sondern nur am Endpunkt, nenntsich
> TLS-Offloading
>
> Schlauerer https-Redirect am Backend:
> <IfModule mod_rewrite.c>
> RewriteEngine on
> RewriteCond %{CONN_REMOTE_ADDR} !^127\.0\.0\.1
> RewriteCond %{HTTPS} off
> RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
> </IfModule>
>
> %{CONN_REMOTE_ADDR} siehe:
> https://bz.apache.org/bugzilla/show_bug.cgi?id=56094
>
>> Am 24. Januar 2018 um 09:10 schrieb Reindl Harald
>> <h....@thelounge.net>:
>>>
>>>
>>>
>>> Am 24.01.2018 um 09:06 schrieb Marcel Wichern:
>>>>
>>>>
>>>> Guten Morgen,
>>>>
>>>> ich habe ein Problem mit meinem Apache2 (v2.4.25) in einer
>>>> Reverse-Proxy Konfiguration.
>>>> Es kommt aufgrund von Wartungsarbeiten desöfteren vor, dass ein
>>>> Backend-Server nicht erreichbar ist.
>>>> In diesem Falle wird ein benutzerdefiniertes 503-Error Dokument
>>>> eingeblendet.
>>>>
>>>> Leider kommt es dann zu dem Problem, dass das Dokument den
>>>> Endanwendern weiterhin angezeigt wird,
>>>> obwohl der Backend-Server schon lange wieder läuft.
>>>>
>>>> Meine Konfiguration sieht aus wie folgt:
>>>>
>>>> [...]
>>>> ProxyRequests Off
>>>> ProxyPreserveHost On
>>>>
>>>> SSLProxyEngine On
>>>>
>>>> # HSTS
>>>> Header always set Strict-Transport-Security "max-age=31536000;
>>>> includeSubDomains"
>>>>
>>>> ProxyPass /proxy-error/ ProxyPassReverse /proxy-error/
>>>> http://127.0.0.1:81/proxy-error/
>>>> ErrorDocument 503 /proxy-error/503-index.html
>>>>
>>>> ProxyPass /shop http://X.X.X.X/shop
>>>> ProxyPassReverse /shop http://X.X.X.X/shop
>>>>
>>>> ProxyPass /kba http://X.X.X.X/kba
>>>> ProxyPassReverse /kba http://X.X.X.X/kba
>>>>
>>>> Redirect / /shop
>>>> [...]
>>>>
>>>> Aufrufe via HTTP werden direkt auf die HTTPS-Seite umgeleitet
>>>
>>>
>>>
>>> WO?
>>>
>>> Am Proxy oder am Backend?
>>> Wen das am Backend passiert hast du vermutlich eine Redirect-Loop
>>>
>>> Anyways - Schon mal in die Logfiles des Backendserver geschaut?
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-de-unsubscribe@httpd.apache.org
> For additional commands, e-mail: users-de-help@httpd.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-de-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-de-help@httpd.apache.org
Re: ErrDoc 503 wird dargestellt, obwohl Backendserver erreichbar ist
Posted by Reindl Harald <h....@thelounge.net>.
Am 24.01.2018 um 09:24 schrieb Marcel Wichern:
> Das ErrorDocument für 503 liegt auf dem Reverse-Proxy und wird auch
> von dem ausgeliefert.
> Die Logdateien sind unauffällig.
Wo das "ErrorDocument" liegt ist mir auch klar
Die Frage war was der Backendserver sagt und ob der einen Redirect
triggert wenn dein Ziel "http://127.0.0.1:81/proxy-error/" und damit
eben NICHT https ist während du gleichzeitig "SSLProxyEngine On" setzt
was impliziert dass du nach hinten bereits die Verschlüsselung brauchst
Also WO sitzt das da? Proxy oder Origin-Server
> RewriteEngine On
> RewriteCond %{HTTPS} !=on
> RewriteRule ^/(.*) https://www.XXX.XX/shop/ [R]
Wenns am Origin-Server sitzt ist es klar wo die Loop herkommt
"SSLProxyEngine On" ist eine Schnapsidee, vom Proxy zum backend auf
127.0.0.1 braucht es kein https sondern nur am Endpunkt, nenntsich
TLS-Offloading
Schlauerer https-Redirect am Backend:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{CONN_REMOTE_ADDR} !^127\.0\.0\.1
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
</IfModule>
%{CONN_REMOTE_ADDR} siehe:
https://bz.apache.org/bugzilla/show_bug.cgi?id=56094
> Am 24. Januar 2018 um 09:10 schrieb Reindl Harald <h....@thelounge.net>:
>>
>>
>> Am 24.01.2018 um 09:06 schrieb Marcel Wichern:
>>>
>>> Guten Morgen,
>>>
>>> ich habe ein Problem mit meinem Apache2 (v2.4.25) in einer
>>> Reverse-Proxy Konfiguration.
>>> Es kommt aufgrund von Wartungsarbeiten desöfteren vor, dass ein
>>> Backend-Server nicht erreichbar ist.
>>> In diesem Falle wird ein benutzerdefiniertes 503-Error Dokument
>>> eingeblendet.
>>>
>>> Leider kommt es dann zu dem Problem, dass das Dokument den
>>> Endanwendern weiterhin angezeigt wird,
>>> obwohl der Backend-Server schon lange wieder läuft.
>>>
>>> Meine Konfiguration sieht aus wie folgt:
>>>
>>> [...]
>>> ProxyRequests Off
>>> ProxyPreserveHost On
>>>
>>> SSLProxyEngine On
>>>
>>> # HSTS
>>> Header always set Strict-Transport-Security "max-age=31536000;
>>> includeSubDomains"
>>>
>>> ProxyPass /proxy-error/
>>> ProxyPassReverse /proxy-error/ http://127.0.0.1:81/proxy-error/
>>> ErrorDocument 503 /proxy-error/503-index.html
>>>
>>> ProxyPass /shop http://X.X.X.X/shop
>>> ProxyPassReverse /shop http://X.X.X.X/shop
>>>
>>> ProxyPass /kba http://X.X.X.X/kba
>>> ProxyPassReverse /kba http://X.X.X.X/kba
>>>
>>> Redirect / /shop
>>> [...]
>>>
>>> Aufrufe via HTTP werden direkt auf die HTTPS-Seite umgeleitet
>>
>>
>> WO?
>>
>> Am Proxy oder am Backend?
>> Wen das am Backend passiert hast du vermutlich eine Redirect-Loop
>>
>> Anyways - Schon mal in die Logfiles des Backendserver geschaut?
---------------------------------------------------------------------
To unsubscribe, e-mail: users-de-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-de-help@httpd.apache.org
Re: ErrDoc 503 wird dargestellt, obwohl Backendserver erreichbar ist
Posted by Marcel Wichern <wi...@googlemail.com>.
Das ErrorDocument für 503 liegt auf dem Reverse-Proxy und wird auch
von dem ausgeliefert.
Die Logdateien sind unauffällig.
Am 24. Januar 2018 um 09:10 schrieb Reindl Harald <h....@thelounge.net>:
>
>
> Am 24.01.2018 um 09:06 schrieb Marcel Wichern:
>>
>> Guten Morgen,
>>
>> ich habe ein Problem mit meinem Apache2 (v2.4.25) in einer
>> Reverse-Proxy Konfiguration.
>> Es kommt aufgrund von Wartungsarbeiten desöfteren vor, dass ein
>> Backend-Server nicht erreichbar ist.
>> In diesem Falle wird ein benutzerdefiniertes 503-Error Dokument
>> eingeblendet.
>>
>> Leider kommt es dann zu dem Problem, dass das Dokument den
>> Endanwendern weiterhin angezeigt wird,
>> obwohl der Backend-Server schon lange wieder läuft.
>>
>> Meine Konfiguration sieht aus wie folgt:
>>
>> [...]
>> ProxyRequests Off
>> ProxyPreserveHost On
>>
>> SSLProxyEngine On
>>
>> # HSTS
>> Header always set Strict-Transport-Security "max-age=31536000;
>> includeSubDomains"
>>
>> ProxyPass /proxy-error/ http://127.0.0.1:81/proxy-error/
>> ProxyPassReverse /proxy-error/ http://127.0.0.1:81/proxy-error/
>> ErrorDocument 503 /proxy-error/503-index.html
>>
>> ProxyPass /shop http://X.X.X.X/shop
>> ProxyPassReverse /shop http://X.X.X.X/shop
>>
>> ProxyPass /kba http://X.X.X.X/kba
>> ProxyPassReverse /kba http://X.X.X.X/kba
>>
>> Redirect / /shop
>> [...]
>>
>> Aufrufe via HTTP werden direkt auf die HTTPS-Seite umgeleitet
>
>
> WO?
>
> Am Proxy oder am Backend?
> Wen das am Backend passiert hast du vermutlich eine Redirect-Loop
>
> Anyways - Schon mal in die Logfiles des Backendserver geschaut?
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-de-unsubscribe@httpd.apache.org
> For additional commands, e-mail: users-de-help@httpd.apache.org
>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-de-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-de-help@httpd.apache.org
Re: ErrDoc 503 wird dargestellt, obwohl Backendserver erreichbar ist
Posted by Reindl Harald <h....@thelounge.net>.
Am 24.01.2018 um 09:06 schrieb Marcel Wichern:
> Guten Morgen,
>
> ich habe ein Problem mit meinem Apache2 (v2.4.25) in einer
> Reverse-Proxy Konfiguration.
> Es kommt aufgrund von Wartungsarbeiten desöfteren vor, dass ein
> Backend-Server nicht erreichbar ist.
> In diesem Falle wird ein benutzerdefiniertes 503-Error Dokument eingeblendet.
>
> Leider kommt es dann zu dem Problem, dass das Dokument den
> Endanwendern weiterhin angezeigt wird,
> obwohl der Backend-Server schon lange wieder läuft.
>
> Meine Konfiguration sieht aus wie folgt:
>
> [...]
> ProxyRequests Off
> ProxyPreserveHost On
>
> SSLProxyEngine On
>
> # HSTS
> Header always set Strict-Transport-Security "max-age=31536000;
> includeSubDomains"
>
> ProxyPass /proxy-error/ http://127.0.0.1:81/proxy-error/
> ProxyPassReverse /proxy-error/ http://127.0.0.1:81/proxy-error/
> ErrorDocument 503 /proxy-error/503-index.html
>
> ProxyPass /shop http://X.X.X.X/shop
> ProxyPassReverse /shop http://X.X.X.X/shop
>
> ProxyPass /kba http://X.X.X.X/kba
> ProxyPassReverse /kba http://X.X.X.X/kba
>
> Redirect / /shop
> [...]
>
> Aufrufe via HTTP werden direkt auf die HTTPS-Seite umgeleitet
WO?
Am Proxy oder am Backend?
Wen das am Backend passiert hast du vermutlich eine Redirect-Loop
Anyways - Schon mal in die Logfiles des Backendserver geschaut?
---------------------------------------------------------------------
To unsubscribe, e-mail: users-de-unsubscribe@httpd.apache.org
For additional commands, e-mail: users-de-help@httpd.apache.org