Raketenwissenschaftler: htaccess: 301 permanent redirect von Domain a.de auf b.de

Beitrag lesen

Der Vorschlag von Martin, den DNS anders zu konfigurieren, funktioniert nur dann, wenn a.de und b.de auf verschiedenen Servern liegen ubnd also überhaupt verschiedene IPs haben. Zudem müsste der Server von b.de die Anfragen von a.de überhaupt so abfrühstücken, dass dieser auf einen Request mit der Angabe von "a.de" richtig regiert.

Die einfachste Lösung wäre in der .htaccess, oder besser in der Konfiguration des Servers a.de eine einzige Zeile:

Redirect permanent / https://b.de/

Dann wäre es auch egal, ob ursprünglich http://a.de/, http://www.a.de/, https://a.de/ oder https://www.a.de/ adressiert wurde.

Aber:

Mit etwas mehr Mühe und Kundenfreundlichkeit legt man in Deinem Fall (Verzeichnis für a.de ist faktisch leer) auf a.de z.b. eine "redirect.php" an und konfiguriert diese in der .htaccess (besser in der Serverkonfiguration - falls Du das darfst) einfach als 404er-Error-Seite:

ErrorDocument 404 /redirect.php

Mittels dieser "redirect.php" kann man den Request auswerten, potentielle Suchbegriffe aus der URL und ggf. den übertragenen Daten extrahieren und dann mit

header('HTTP/1.0 301 Moved Permanently'); 
header('Location: https://b.de/search.php?q=' . $itemlist);

weiterleiten.

Für Browser bzw. Clients, die konfiguartionsbedingt dem Redirect nicht folgen wollen, kann man sodann außerdem eine nette, aber sehr schlanke (Grund: das werden nicht viele zu sehen bekommen) Webseite mit dem Link "bauen".

Natürlich braucht es auf b.de dann auch eine search.php, welche den Request verarbeitet.

Tipp: Wenn die URL nichts verwertbares enthält geht die Weiterleitung und dann auch der Link natürlich zur Startseite:

header('HTTP/1.0 301 Moved Permanently'); 
header('Location: https://b.de/');