.htaccess Weiterleitung aber irgendwie andersrum

Dieses Thema im Forum "Web-Programmierung" wurde erstellt von Jakob, 14.10.2005.

  1. Jakob

    Jakob Thread Starter MacUser Mitglied

    Beiträge:
    1.067
    Zustimmungen:
    21
    MacUser seit:
    05.01.2004
    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: 14.10.2005
  2. dms

    dms Gast

    So ungefähr:

    RewriteCond %{REMOTE_HOST} a.com

    RewriteRule (.*) /a/$1
     
  3. Hilarious

    Hilarious MacUser Mitglied

    Beiträge:
    2.195
    Zustimmungen:
    5
    MacUser seit:
    25.11.2004
    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: 14.10.2005
  4. dms

    dms Gast

    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.
     
  5. Jakob

    Jakob Thread Starter MacUser Mitglied

    Beiträge:
    1.067
    Zustimmungen:
    21
    MacUser seit:
    05.01.2004
    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!
     
  6. Hilarious

    Hilarious MacUser Mitglied

    Beiträge:
    2.195
    Zustimmungen:
    5
    MacUser seit:
    25.11.2004
    Hast Du Zugriff auf's error_log?
     
  7. Jakob

    Jakob Thread Starter MacUser Mitglied

    Beiträge:
    1.067
    Zustimmungen:
    21
    MacUser seit:
    05.01.2004
    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!
     
Die Seite wird geladen...