.htaccess Weiterleitung aber irgendwie andersrum

Jakob

Jakob

Aktives Mitglied
Thread Starter
Dabei seit
05.01.2004
Beiträge
1.070
Reaktionspunkte
21
Hallo,

habe hier einen webspace, der von mehreren domains angesprochen werden kann. Ich möchte aber, dass wenn http://www.a.com eingegeben wird eine andere Unterseite angezeigt wird, wie wenn ich http://www.b.com eingebe.

Im Web finde ich immer nur Anleitungen anders herum, also wohin was gehen soll, nicht die Abfrage woher (domain) jemand kommt. Wie geht das?

Danke!
 
Zuletzt bearbeitet:
So ungefähr:

RewriteCond %{REMOTE_HOST} a.com

RewriteRule (.*) /a/$1
 
Hi Jakob,
dms hat es schon angedeutet, die Lösung heißt mod_rewrite, ein Modul, welches auf Deinem Server zur Verfügung stehen muss, und in dem WebSpace auch aktivierbar sein muss.

Anleitung findest Du hier:
http://www.modrewrite.de/
http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html
http://www.sitepoint.com/article/guide-url-rewriting

Dann sind "reguläre Ausdrücke" auch noch wichtig:
http://en.wikipedia.org/wiki/Regular_expression

Deine .htaccess könnte etwa so aussehen:

Code:
# Ohne Energie kein Licht:
RewriteEngine On
 
# von a.com nach unterseite_a.html
RewriteCond %{REMOTE_HOST} ^(www\.)?a\.com [NC]
RewriteRule ^(.*)$ http://www.jakobsserver.com/unterseite_a.html [R=301,L]

# von b.com nach unterseite_b.html
RewriteCond %{REMOTE_HOST} ^(www\.)?b\.com [NC]
RewriteRule ^(.*)$ http://www.jakobsserver.com/unterseite_b.html [R=301,L]

Ich hoffe, es hilft :)
 
Zuletzt bearbeitet:
Naja, Jakob ist ja nicht blöd. Ich dachte mir dass es mit mod_rewrite zu tun hat wüsste er. Im Prinzip gings ja nur um die Definition der Bedingung: RewriteCond.
 
Ja, vielen Dank für die Infos. Ein kleines Problem gibt's aber noch. Man bemerkt keine Veränderung. Kann es daran liegen, dass noch andere rewrite-rules in der .htaccess sind, oder ist eine Reihenfolge falsch? Die letzten 3 Zeilen funktionieren.

Code:
RewriteEngine on
RewriteBase /

RewriteCond %{REMOTE_HOST} ^(www\.)?example-1\.de [NC]
RewriteRule ^(.*)$ http://www.example-2.de/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*) index\.php
Danke!
 
Hast Du Zugriff auf's error_log?
 
Ok, jetzt klappt's. Das war auf einem Server auf dem Confixx(*würg*) läuft, die ham sich bisschen in die Haare bekommen.

Danke für die schnelle Hilfe!
 
Zurück
Oben Unten