Re: Apache-klurighet
jens persson wrote:
On Wed, Sep 22, 2004 at 02:55:40PM +0200, Anders Wallenquist wrote:
<snip>
Maskin 1:
RewriteEngine On
RewriteRule ^(.*) http://www.bakom.brandväggen.webbplats1/$1 [P,L]
Maskin 2:
<snip>
#VirtualDocumentRoot /var/www/%{HTTP_X_FORWARDED_HOST}e/docs
RewriteEngine On
RewriteRule ^/(.*)$ /var/www/%{HTTP_X_FORWARDED_HOST}/docs/$1
Environmentvariablerna HTTP_X_FORWARDED_HOST med flera innehåller nyttig
information från maskin 1 - det man kan önska och mer därtill.
Men variablerna nollställs så snart det finns en RewriteRule med.
Remarkas Rewrite-kommandona och VirtualDocumentRoot plockas fram så
finns variablerna men oåtkompliga i VirtualDocument-kommandon (?).
Några ideer? Andra lösningsförslag?
Jag är inte riktigt säker på vad problemet är, löser inte
VirtualDocumentRoot reglen problemet?
Nej därför att alla anrop översätts i VirtualDocumentRoot med %0 satt
till en och samma domän.
HTTP_SERVER == %0 == webbhotellets huvuddomän/maskin 1.
HTTP_X_FORWARDED_HOST == den domän som ursprungligen angivits i
webbläsarens adressruta
REMOTE_HOST == maskin 1
REMOTE_ADDR == ip för maskin 1
HTTP_X_FORWARDED_FOR == den ursprungliga ip-adressen, besökarens verkliga ip
Med bara en webbserver bakom brandväggen går det utmärkt att använda
VirtualDocumentRoot och %0. Regel 1A.
Problemet uppstår med en IP och flera webbservrar. Mitt försök till
lösning bygger på att i brandväggen/maskin 1 proxa trafiken till rätt
webbserver med bibehållen information om ursprunglig virtuell server
trafiken ämnar till. Det såg bra ut med HTTP_X_FORWARDED_HOST i
environment som gick att logga med och använda - dock då inte i uttryck
med VirtualDocumentRoot och tyvärr inte heller med Rewrite som trollar
bort hela environment :-(.
En annan variation vore att i göra hela omskrivningen på maskin 1. Något i stil med:
RewriteRule ^(.*) http://www.bakom.brandväggen.webbplats1/www.maskin1/docs/$1 [P,L]
Bra förslag! Skall prova ditt förslag att göra hela omskrivningen i
maskin 1 (så att det blir transparent för respektive webbplats), då får
jag ju över samma information som om jag hämtat den från environment.
--
Hälsningar,
--
....''`. Anders Wallenquist, anders.wallenquist@kreawit.se
..:.:' : 013-35 29 50 0709 - 565 160
..`..`'. http://www.kreawit.se
....`--. http://www.rfa.se
begin:vcard
fn:Anders Wallenquist
n:Wallenquist;Anders
org:Kreawit
adr;quoted-printable:;;Furugatan 4b;Link=C3=B6ping;;582 45;sweden
email;internet:anders.wallenquist@kreawit.se
title:Senior consultant
tel;work:013-352950
tel;home:013-127383
tel;cell:0709-565 160
x-mozilla-html:FALSE
url:http://www.kreawit.se
version:2.1
end:vcard
Reply to: