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 Boris Höffgen <ho...@hjdt.de> on 2002/11/13 10:26:24 UTC

Apache 1.2.26 + mod_rewrite

Hallo,

ich möchte gerne folgendes Problem lösen:
wenn eine Web-Anfrage an folgende URL geht
(http://www.example.de/test/), soll der Apache mit Hilfe von ProxyPass
und RewriteRule (da die Seiten absolute Links enthalten) die Anfrage an
einen anderen Web-Server weiterleiten (z.B. an http://w02.example.de).
Die Weiterleitung funktioniert zwar, allerdings ändert er das "Dokument
Root" nicht, so dass viele Web-Seiten nicht erreichbar sind.

Teil der httpd.conf:

[snip]

<IfModule mod_proxy.c>
      ProxyRequests On

      <Directory proxy:*>
          AllowOverride All
          Order deny,allow
          Deny from all
          Allow from .example.de
      </Directory>
      ProxyVia On
      NoCache *
</IfModule>

[snip]

<VirtualHost *>
      ServerAdmin webmaster@example.de
      DocumentRoot /usr/local/httpd/htdocs
      ServerName www.example.de
      ProxyPass /test/ http://w02.example.de/
      RewriteEngine On
      RewriteRule ^/test/(.*)  http://w02.example.de/$1 [P]
      RewriteLog /tmp/rewrite.log
      RewriteLogLevel 1
</VirtualHost>


Wer kann mir sagen, was ich ändern muss, damit er das ganze
Dokument-Root vom w02 nimmt?

Danke für Eure Mühe.

Gruß

Boris



Re: Apache 1.2.26 + mod_rewrite

Posted by "i.t" <i....@ithum.de>.
msg Mittwoch, 13. November 2002 10:26 by Boris Höffgen:
> Wer kann mir sagen, was ich ändern muss, damit er das ganze
> Dokument-Root vom w02 nimmt?

mit absoluten Links des eingeblendeten Servers kommt das Proxymodul allein 
nicht klar; es schreibt ja kein HTML um. Dafür musst Du irgendein 
entsprechendes anderes Modul - siehe CPAN - wie z.B. LibProxy benutzen

Es sei denn, Du weisst, welche absoluten Links immer konstant produziert 
werden; dann kannst Du jedes einzelne Verzeichnis mit ProxyPass und 
ProxyPassReverse angeben (oder ProxyPass + Rewrite [P] )

also z.B.
      ProxyPass /test/ http://w02.example.de/
      RewriteRule ^/test/(.*)  http://w02.example.de/$1 [P]
      ProxyPass /test2/ http://w02.example.de/
      RewriteRule ^/test2/(.*)  http://w02.example.de/$1 [P]

Gruss
i.t
-- 
 . ___
 |  |  Irmund     Thum
 |  |  +49 6374 992541 
       +49 173 7405882