Ergebnis 1 bis 12 von 12

Thema: .htaccess: Umleitungen setzen von alter zu neuer Domain bei Erhaltung des Pfades

  1. #1
    Contao-Fan Avatar von Jens Pielawa
    Registriert seit
    08.01.2010.
    Ort
    9°45'34"E 52°20'12"N
    Beiträge
    531

    Frage .htaccess: Umleitungen setzen von alter zu neuer Domain bei Erhaltung des Pfades

    Hallo an alle,

    ich möchte ein Problem mit einem Domainwechsel per htaccess lösen, bekomme es aber nicht hin.

    Mein Kunde hatte drei Domains:
    www.soundfile-music.de
    www.soundfile-music.com
    www.olivergies.de

    Die fett geschriebene URL war bislang die Hauptdomain, alle anderen leiteten per 1&1-Webspace um. Nach einer SSL-Umstellung habe ich die Domains getauscht, und zwar:
    www.olivergies.de
    www.soundfile-music.de
    www.soundfile-music.com
    Jetzt sollte also sein natursprachlicher Name die Haupt-URL werden und die beiden anderen leiten auf https://www.olivergies.de um, dieses mal mit eigenen Startpunkten innerhalb Contao.

    Im Netz gibt es es jetzt seit Jahren etliche Links, z. B. http://www.soundfile-music.de/diskog...-maybebop.html
    Wie kann man mit der htaccess mit mod_rewrite nur die Domainnamen tauschen und dabei den kompletten Pfad erhalten? Also http://www.soundfile-music.de/diskographie-maybebop.html (und etliche andere Pfade) soll geräuschlos auf https://www.olivergies.de/diskographie-maybebop.html umleiten.
    Ich bekomme jedoch immer ein Contao-Screen "Seite nicht gefunden", egal welche Beispiele ich zu RewriteCond aus dem Netz auch ausprobiert habe. Kann mir dabei jemand bitte helfen?
    Beste Grüße von

  2. #2
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.108
    Partner-ID
    10107

    Standard

    Du machst eine ganz normale Domain Weiterleitung, sonst nichts.

  3. #3
    Contao-Fan Avatar von Jens Pielawa
    Registriert seit
    08.01.2010.
    Ort
    9°45'34"E 52°20'12"N
    Beiträge
    531

    Standard

    Aber das macht doch Contao mit seinen Startpunkten?
    Denn damit klappt ja "nur" das Hauptdomain-Weiterleiten. Wenn es um komplette "alte" Pfade geht, landet es ja auf einer Contao-"Seite nicht gefunden"-Seite.
    Beste Grüße von

  4. #4
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.108
    Partner-ID
    10107

    Standard

    Zitat Zitat von Jens Pielawa Beitrag anzeigen
    Aber das macht doch Contao mit seinen Startpunkten?
    Nein, in der .htaccess meinte ich.

  5. #5
    Contao-Fan Avatar von Jens Pielawa
    Registriert seit
    08.01.2010.
    Ort
    9°45'34"E 52°20'12"N
    Beiträge
    531

    Standard

    Ich habe in die htaccess folgendes eingestragen:

    Code:
    <IfModule mod_rewrite.c>
      RewriteEngine On
    
    [...Hier steht der übliche Contao-Rewrite-Block etc.]
      
      RewriteCond %{SERVER_PORT} !=443
      RewriteRule ^(.*)$ https://www.olivergies.de/$1 [R=301,L]
    
      RewriteCond %{HTTP_HOST} !^www.soundfile-music.de$
      RewriteRule ^(.*)$ www.olivergies.de/$1 [L,R=301] 
    </IfModule>
    Funktioniert trotzdem nicht. Ich habe mein Haupt-Contao in einem Unterordner, dort auch korrekt hinverwiesen und dort auch diese htaccess liegen. Auch die diversen Startpunkte mit 301-Umleitungen sind gesetzt. Dennoch klappt das Ersetzen kompletter alter Pfade nicht wie gewünscht.
    Beste Grüße von

  6. #6
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.108
    Partner-ID
    10107

    Standard

    Zitat Zitat von Jens Pielawa Beitrag anzeigen
    Ich habe in die htaccess folgendes eingestragen:

    Code:
    <IfModule mod_rewrite.c>
      RewriteEngine On
    
    [...Hier steht der übliche Contao-Rewrite-Block etc.]
      
      RewriteCond %{SERVER_PORT} !=443
      RewriteRule ^(.*)$ https://www.olivergies.de/$1 [R=301,L]
    
      RewriteCond %{HTTP_HOST} !^www.soundfile-music.de$
      RewriteRule ^(.*)$ www.olivergies.de/$1 [L,R=301] 
    </IfModule>
    Deine Redirects solltest du direkt nach RewriteBase / setzen.



    Zitat Zitat von Jens Pielawa Beitrag anzeigen
    Ich habe in die htaccess folgendes eingestragen:

    Code:
      RewriteCond %{HTTP_HOST} !^www.soundfile-music.de$
      RewriteRule ^(.*)$ www.olivergies.de/$1 [L,R=301]
    Funktioniert trotzdem nicht.
    Das funktioniert nicht, weil dieser Redirect auch keinen Sinn ergibt . Du sagst damit: "Wenn die Domain nicht www.soundfile-music.de lautet, soll auf www.olivergies.de weitergeleitet werden". Außerdem greift dieser Regel auch folgendermaßen, weil du den "." nicht escaped hast: "Wenn die Domain nicht wwwholladiesoundfile-musicwaldfeede lautet, soll auf www.olivergies.de weitergeleitet werden".

  7. #7
    Contao-Fan Avatar von Jens Pielawa
    Registriert seit
    08.01.2010.
    Ort
    9°45'34"E 52°20'12"N
    Beiträge
    531

    Standard

    Großes Aha-Erlebnis mit dem "escaped" (da musste ich erst mal weitere Beispiele zusammensuchen). So steht es jetzt bei mir und so funktioniert es:

    Code:
    <IfModule mod_rewrite.c>
      RewriteEngine On
    
      RewriteBase /
      
      RewriteCond %{SERVER_PORT} !=443
      RewriteRule ^(.*)$ https://www.olivergies.de/$1 [R=301,L]
      
      RewriteCond %{HTTP_HOST} soundfile-music\.de$ [NC]
      RewriteRule ^(.*)$ https://www.olivergies\.de/$1 [L,R=301]
    
    [...usw.]
    </IfModule>
    Beste Grüße von

  8. #8
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.108
    Partner-ID
    10107

    Standard

    Zitat Zitat von Jens Pielawa Beitrag anzeigen
    Großes Aha-Erlebnis mit dem "escaped" (da musste ich erst mal weitere Beispiele zusammensuchen). So steht es jetzt bei mir und so funktioniert es:

    Code:
    <IfModule mod_rewrite.c>
      RewriteEngine On
    
      RewriteBase /
      
      RewriteCond %{SERVER_PORT} !=443
      RewriteRule ^(.*)$ https://www.olivergies.de/$1 [R=301,L]
      
      RewriteCond %{HTTP_HOST} soundfile-music\.de$ [NC]
      RewriteRule ^(.*)$ https://www.olivergies\.de/$1 [L,R=301]
    
    [...usw.]
    </IfModule>
    Da ist ein Backslash zu viel. Und da du ja alle Domains auf www.olivergies.de weiterleiten möchtest könntest du ja gleich
    Code:
    RewriteCond %{HTTP_HOST} !^www\.olivergies\.de$ [NC]
    RewriteRule (.*) https://www.olivergies.de/$1 [L,R=301]
    verwenden und sonst nichts.

  9. #9
    Contao-Fan Avatar von Jens Pielawa
    Registriert seit
    08.01.2010.
    Ort
    9°45'34"E 52°20'12"N
    Beiträge
    531

    Standard

    Zitat Zitat von Spooky Beitrag anzeigen
    Da ist ein Backslash zu viel. Und da du ja alle Domains auf www.olivergies.de weiterleiten möchtest könntest du ja gleich
    Code:
    RewriteCond %{HTTP_HOST} !^www\.olivergies\.de$ [NC]
    RewriteRule (.*) https://www.olivergies.de/$1 [L,R=301]
    verwenden und sonst nichts.
    Da ist jetzt aber zweimal die Ziel-Domain drin. Soll das so sein?
    Beste Grüße von

  10. #10
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.108
    Partner-ID
    10107

    Standard

    Zitat Zitat von Jens Pielawa Beitrag anzeigen
    Da ist jetzt aber zweimal die Ziel-Domain drin. Soll das so sein?
    Ja natürlich. Lies' dir die Anweisung laut vor

  11. #11
    Contao-Fan Avatar von Jens Pielawa
    Registriert seit
    08.01.2010.
    Ort
    9°45'34"E 52°20'12"N
    Beiträge
    531

    Standard

    Dieses verdammte Ausrufezeichen!
    Aber ist das nicht auch ein bisschen zu viel? Ich habe aus lauter Faulheit nur die beiden anderen vorhandenen Domains nun eingesetzt (ohne [OR]), und so klappt es doch auch:

    Code:
      RewriteCond %{HTTP_HOST} soundfile-music\.de$ [NC]
      RewriteRule ^(.*)$ https://www.olivergies.de/$1 [L,R=301]
    
      RewriteCond %{HTTP_HOST} soundfile-music\.com$ [NC]
      RewriteRule ^(.*)$ https://www.olivergies.de/$1 [L,R=301]
    Beste Grüße von

  12. #12
    Community-Moderator
    Wandelndes Contao-Lexikon
    Avatar von Spooky
    Registriert seit
    12.04.2012.
    Ort
    Scotland
    Beiträge
    34.108
    Partner-ID
    10107

    Standard

    Ja, aber mit der anderen Anweisung kannst du dir das sparen. Weniger Codezeilen sind immer besser

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •