htaccess: 301 permanent redirect von Domain a.de auf b.de
bearbeitet von RaketenwissenschaftlerDer 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:
~~~Apache
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 einfach als 404er-Error-Seite:
~~~Apache
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
~~~php
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 natürlich zur Startseite:
~~~php
header('HTTP/1.0 301 Moved Permanently');
header('Location: https://b.de/');
~~~