Apache - mod_rewrite...

Tja... ich wusste (mal wieder^^) net so richtig wohin damit, aber da es etwas mit Webdesign zu tun hat hab ich einfach ma hier gepostet :p

Mein Problem is folgendes:

ich hab n Webserver auf dem auf unterschiedlichen Ports unterschiedliche Webserver laufen, und auf Port 80 läuft ein Apache.

Jetzt würd ich gerne die andern Server über eine Subdomain des Apache erreichbar machen.
z.B.: http://blablubb.apache.org soll auf http://anderer_server.org:5000/bla/blubb/was_auch_immer/ weiterleiten, jedoch ohne die URL zu ändern, sprich es soll weiterhin http://blablubb.apache.org angezeigt werden.

Mit PHP-header-unleitung funktioniert zwar das Umleiten auf andere Ports und Protokolle, jedoch zeigt er dann die "echte", unschöne URL an.

Framesets würden den Zweck zwar erfüllen, wären allerdings eine sehr unschöne und unprofessionelle Lösung, die zudem auch nicht mit jedem Browser funktioniert.

Dann bin ich auf Mod_Rewrite gestoßen, hab sogar ne Anleitung gefunden (klick) nur blick ich das erstens net so ganz^^ und ich hab auch nix gefunden wie ich subdomains weiterleiten kann...


wär' hier jemand so freundlich mir eine Konfiguration für mein Beispiel zu schreiben?
 
Ähm, korrigiert mich wenn ich total danebn liege! Aber ist mod_rewrite eigentlich nicht dafür da um aus unsauberen URLs z.B. www.domain.de?topic=web&cat=books&page=005 saubere z.B. www.domain.de/web/books/005/ zu machen?
Ich würde eine Umleitung per meta refresh machen!
z.B. <meta http-equiv="refresh" content="3; URL=http://andere.domain.de./kontakt.php"> wobei content die Sekunden sind, bis weitergeleitet wird.
Denke, dass damit auch die echte URL angezeigt wird.

Greetz
Franky
 
mod_alias kann für die Redirects genutzt werden. Um die hier gewünschte Situation mit mod_rewrite und mod_alias zu erreichen, müsste ein entsprechendes VHost etwa so aussehen:

Code:
NameVirtualHost *

<VirtualHost *>
    ....
    DocumentRoot /var/www # an die gegebenen Bedingungen anpassen
    ....
    ServerName subdomain.meinedomain.de
    <Directory /var/www/>
        RedirectMatch ^/$ http://meinedomain.de:5000/ # hier das Match entsprechend anpassen
    ....
    </Directory>
    ....
</VirtualHost>

Das "Verschönern" der Subdomains bzw. der Domains der Server auf den verschiedenen Ports (also z.B. die Umformung der URL von http://meinedomain.de:5000/ auf http://subdomain.meinedomain.de/ muss dann der entsprechende Server via mod_rewrite machen.
 
Redirecten ist an dieser Stelle der falsche Begriff, worum es eigentlich geht, ist ein transparenter Proxy. Den bekommt man aber mit mod_rewrite hin:

Code:
RewriteEngine On
RewriteRule (.*) http://interne_ip:port/$1 [P]

Wenn eine Subdomain das handlen soll, dann gehört diese RewriteRule eben in einen eigenen VirtualHost, der nur diese Subdomain bedient.
 
ok...
Ich hab LX's Methode ausprobiert, allerdings bekomm ich dann immer einen 403er zurück wenn ich versuche auf die Subdomain zuzugreifen!?

Code:
<VirtualHost *>
ServerName subdomain.*
ServerAlias subdomain.*

RewriteEngine On
RewriteRule (.*) http://127.0.0.1:5000/$1 [P]

</VirtualHost>

is doch richtig so, oder hab ich da was falsch verstanden?
 
Zurück
Oben