.htaccess 301 Redirect von alter zu neuer Domain

Hypeo

Lt. Commander
Registriert
Okt. 2011
Beiträge
1.026
Hallo,

ich habe bisher eine Domain genutzt, welche kostenlos von meinem Hoster zur Verfügung gestellt wurde. Da diese jedoch sehr lang ist, nicht gut zu merken ist und auch nicht seriös aussieht, habe ich auf die Webseite eine eigene ".de" Domain aufgeschaltet.

Aktuell sieht es so aus:

a) Wird die Seite über die neue "www.SEITENNAME.de" Domain aufgerufen, bleibt es auch bei dieser.
b) Wird die Seite über die alte Domain aufgerufen, bleibt es auf der aufgerufen Seite bei dieser und erst die daraufhin aufgerufenen Seiten werden, auf Grunde der Verlinkungen, mit der ".de" Domain aufgerufen.
c) Wird die neue ".de" Domain ohne "www." aufgerufen, bleibt es vorerst bei dieser (wie bei Punkt c).

Nun könnt ihr euch das Ergebnis vorstellen: Aus Sicht von Google gibt es von jeder Seite drei Versionen und deshalb auch mehrere Einträge in Google. Unterschiedliche Seiten mit identischem Inhalt werden jedoch von Google abgewertet und die "Googler" freuen sich natürlich auch nicht über Mehrfacheinträge.


So soll es aussehen:

a) Aufrufe von "www.SEITENNAME.de" selbige aufrufen
b) Aufrufe der alten Domain sollen auf "www.SEITENNAME.de" weitergeleitet werden, ohne den Verlust der Angaben hinter dem ".de/" (Beispiel: "SEITENNAME.de/HierStehenDieGewünschtenAngaben")
c) Aufrufe der Domain ohne www sollen, wie in b beschrieben, auf die Domain mit www weitergeleitet werden.


Folgendes habe ich bereits ausprobiert:
Ich habe schon diverse vorgefertigte Codes aus dem Internet ausprobiert, jedoch bekomme ich vom Browser beim Aufruf immer eine Fehlerseite mit der Meldung "Diese Webseite hat zu viele Weiterleitungen erzeugt".
Ich nehme deshalb an, dass der Code als Dauerschleife ausgeführt wird und ein "Stopp" Befehl fehlt.

Hier einer der Codes, der laut folgender Webseite für meine gesuchte Weiterletung funktionieren soll:
Code:
RewriteEngine on
RewriteRule ^(.*) http://www.SEITENNAME.de/$1 [R=301,L]
Wie oben geschrieben, kam natürlich auch bei diesem Code die Fehlermeldung im Browser.


Gruß,
hypeo
 
Zuletzt bearbeitet:
Hallo,

zeigen beide Domains auf das selbe Verzeichnis?
Vorschlag:

Alte Domain >> Verzeichnis mit .htaccess Datei

Code:
RewriteEngine on
RewriteRule (.*) http://www.neuedomain.de/$1 [R=301,L]

Neue Domain >> Verzeichnis mit allen Daten + .htaccess Datei:

Code:
RewriteEngine on
RewriteCond %{HTTP_HOST} ^neuedomain.de [NC]
RewriteRule (.*) http://www.neuedomain.de/$1 [R=301,L]

Ich hoffe das hilft dir weiter.
 
Probier es mal mit meinem Vorschlag. Einfach ein weiteres Verzeichnis anlegen, Name zb 301, und darin die erste .htaccess. Die alte Domain dann auf dieses Verzeichnis zeigen lassen, die neue bleibt wie gehabt und bekommt die zweite .htacess.
 
Sehr gut :)
Der Redirect zur neuen Domain über das Unterverzeichnis (ich habe es "/redirect" genannt, falls das später wichtig sein sollte) funktioniert, jedoch kann ich dieses Verzeichnis über die Einstellungen des Webspaces nicht der alten Adresse zuordnen.

Der andere Code um die ohne-www-Version zur www-Version umzuleiten funktioniert leider nicht.
 
Zuletzt bearbeitet:
Dann musst du es vll. andersherum probieren. Sprich die alte Adresse zeigt aufs Hauptverzeichnis und bekommt die erste .htaccess und die neue zeigt auf ein Unterverzeichnis mit der zweiten .htaccess.

Was heißt funktioniert nicht? Fehlermeldung? Oder passiert einfach nichts?
Ich habe es bei mir getestet, da funktioniert es einwandfrei.
 
Komisch.

Bei mir passiert gar nichts. Ich hatte den Code wie beschrieben in der .htaccess eingefügt und auch bei meinem Browser den Cache geleert.

Es wäre theoretisch möglich, die Verzeichnisse zu wechseln, jedoch würde das eine große Menge an Arbeit mit sich ziehen, da u.a. sämtliche Links aktualisiert werden müssen.

Ist es denn möglich, das ganze wie folgt zu regeln? :
Code:
Domain ist alteDomain oder alteDomain2 oder NeueDomainOhneWWW?

Ja?
Ändere Verzeichnis zu "*/redirect/HierStehenDieGewünschtenAngaben"

Nein?
Nichts verändern
 
Zuletzt bearbeitet:
Hast du denn überall absolute Links und keine relativen?

Könntest du mal den Inhalt der .htaccess der neuen Domain hier posten, vll hat sich da ein Fehler eingeschlichen?
 
J.D schrieb:
Hast du denn überall absolute Links und keine relativen?
50:50 würde ich sagen. Viele Links im MySQL sind absolut, die im HTML- und PHP code (fast) alle relativ.

Es würde halt einige Zeit dauern, da ich nicht vermute, dass sich die MySQL Links per "Suchen und Ersetzen" ändern lassen.
Aber ich meine, dass man in Wordpress auch die Adressen simulieren kann, d.h. die Daten des Blogs liegen in einem Unterordner, aber dieser selbst wird über das Hauptverzeichnis aufgerufen.
Bloß wird dasselbe Problem entstehen, wenn ich simulierte Links benutzt, da sich alle Dateien trotzdem (wenn auch simuliert) im selben Verzeichnis wie vorher befinden - d.h. ich wäre wieder an dem Punkt, wo ich jetzt bin.

Ein kompletter Umzug in einen Unterordner würde das ganze Problem nur (Stichwort fehlerhafte Verlinkungen) vergrößern.




J.D schrieb:
Könntest du mal den Inhalt der .htaccess der neuen Domain hier posten, vll hat sich da ein Fehler eingeschlichen?
Ich habe den Code jeweils alleine und mit dem anderen Code in meiner .htaccess getestet.


Hier die komplette .htaccess, wie sie momentan online ist:
HTML:
ErrorDocument 404 /404.php

# BEGIN nonWWWtoWWW
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^neueDomainOhneWWW.de [NC]
RewriteRule (.*) http://www.NeueDomain.de/$1 [R=301,L]
</IfModule>
# END nonWWWtoWWW

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
 
Zuletzt bearbeitet:
Auch mal mit einem zusätzlichen "RewriteBase /" wie im unteren Teil für die Permalinks versucht?
Wenn das nicht funktioniert müsstest du dich mal mit deinem Hoster in Verbindung setzen.
Mir gehen langsam die Ideen aus.
 
Zurück
Oben