domainic hat geschrieben:Also angenommen ich habe die domain southmedia.de und
www.southmedia.de.
www.Southmedia.de ist meine Hauptdomain. Diese leite ich bei meinem Provider in das Verzeichnis www/Forum .
Jetzt will ich die Southmedia.de sumafreundlich auf
www.southmedia.de weiterleiten.
Dazu habe ich einen Ordner www/divers/southmedia/ in den die domain southmedia.de leitet.
Stimmt das dann wenn ich den Code in eine .htaccess packe und in den Ordnder www/divers/southmedia/ packe ?
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.southmedia\.de$
RewriteRule ^(.*)$
https://www.southmedia.de/$1 [L,R=301]
Nein, das ist in
deinem Falle überflüssig. Du hast ein eigenes Verzeichnis je Domain, daher ist von vornherein klar, welche Domain von der .htaccess bedient wird. Die Zeile mit dem %{HTTP_HOST}, die dazu dient, die Domain zu prüfen, ist dementsprechend überflüssig und damit der gesamte mod_rewrite-Einsatz.
Du kannst im nicht-www-Verzeichnis einfach
Redirect permanent /
http://www.example.com/
einsetzen. Redirect leitet alles weiter, was mit dem gegebenen Pfad beginnt; das Argument / bewirkt dementsprechend eine Weiterleitung für die komplette Domain: alt.de/ geht nach neu.de/ genauso wie alt.de/bla/ nach neu.de/bla/ oder auch alt.de/dings/bumms.html nach neu.de/dings/bumms.html weitergeleitet wird, die eine Zeile oben reicht.
Die Rewrite-Geschichte ist nur notwendig, wenn jemand nicht in der Lage ist, Domains aus getrennten Verzeichnissen zu bedienen, also mehrere Domains auf dasselbe Verzeichnis zeigen. In dem Fall ist nicht klar, welche Domain gerade angefragt wird, entspechend muss mit mod_rewrite eine Domainprüfung durchgeführt werden.
Du hast mit deinen zwei Verzeichnissen die bessere, da durch den wegfallenden mod_rewrite-Einsatz zumindest theoretisch weniger Last erzeugende Lösung, behalte sie.
Ich täte dir allerdings raten, statt der Phantasienamen www/Forum und www/divers/southmedia/ anständige zu verwenden, d.h. solche, die die Domain auch direkt beschreiben: www/example.com und www/
www.example.com. Weiterhin solltest du es vermeiden, das Verzeichnis www selbst einer Domain zuzuordnen.
Ansonsten ist dein Aufbau, wie gesagt, vollkommen in Ordnung.
Zu deiner Eingangsfrage: Redirect 301 und Redirect permanent ist gleichwertig – das geht aber auch aus der Anleitung hervor und auf Protokollebene nur zwangsläufig.
Bisher hatte ich im Ordner www/divers/southmedia/ nur eine .htaccess mit dem Inhalt "Redirect permanent /index.php
https://www.southmedia.de/index.php" obwohl ich in dem Ordner gar keine index.php hatte.
Redirect greift früh in der URL-Verarbeitung, noch vor dem Auflösen der URL in einen Dateisystempfad. Dementsprechend brauchst du keine Datei anlegen.