.htaccess Weiterleitung aber irgendwie andersrum

Jakob

Mitglied
Thread Starter
Mitglied seit
05.01.2004
Beiträge
1.070
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:
D

dms

So ungefähr:

RewriteCond %{REMOTE_HOST} a.com

RewriteRule (.*) /a/$1
 

Hilarious

Mitglied
Mitglied seit
25.11.2004
Beiträge
2.185
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:
D

dms

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.
 

Jakob

Mitglied
Thread Starter
Mitglied seit
05.01.2004
Beiträge
1.070
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!
 

Hilarious

Mitglied
Mitglied seit
25.11.2004
Beiträge
2.185
Hast Du Zugriff auf's error_log?
 

Jakob

Mitglied
Thread Starter
Mitglied seit
05.01.2004
Beiträge
1.070
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!
 
Oben