[PHP] Automatische Weiterleitung

Dieser Beitrag ist auch verfügbar in: Englisch

Hallo,

heute möchte ich kurz über das Thema „Weiterleitungen mit PHP“ sprechen. Kurz, weil es nicht viel zu sagen gibt :)

Der Code für eine Weiterleitung mit PHP sieht so aus:

<?php
	header("Location: http://www.domain.de/seite.php"); 
	exit(); 
?>

header() gibt einen HTML-Header aus. Mit „Location:“ wird angewiesen das es sich um eine Weiterleitung handelt. Danach kommt dann die URL der Seite zu der Weitergeleitet werden soll. Und mit exit(); brechen wir das Script ab und beenden weitere Ausführungen.

Nun muss man aber noch dazu sagen das man schon nachdenken sollte bevor man einfach weiterleitet. Ist es z.B. eine permanente Weiterleitung, weil sich in der Webseitenstruktur etwas verändert hat (z.B. eine Seite hat eine neue Adresse bekommen), dann muss man dies auch angeben, sonst gibt es Probleme z.B. mit den Suchmaschinenrankings.

Eine permanente Weiterleitung sieht dann so aus:

<?php
	header("Status: 301 Moved Permanently");
	header("Location: http://www.domain.de/seite.php"); 
	exit(); 
?>

Mit der Zeile header("Status: 301 Moved Permanently"); geben wir an das diese Seite für immer verschoben wurde. Es gibt auch noch den 302 Code, der besagt das die Seite nur vorübergehend verschobene oder nicht erreichbar ist.
Wenn z.B. der Google-Bot vorbeikommt und den 301 Code vorfindet, dann wird er die Seitenänderung speichern und das nächste mal gleich zur neuen Seite gehen. So wird dann auch das Ranking übertragen, anstatt verloren zu gehen.

Das schöne an PHP Weiterleitungen ist das sie Serverseitig sind und immer funktionieren. Außerdem kann man Sie dynamisch gestalten. Weiterleitungen in der htaccess können zwar teilweise durch Regeln auch dynamisch erstellt werden, aber nicht so gut wie mit PHP direkt. Und Redirects in HTML sind irgendwie total für den Garten. Das gleiche mit Javascript-Weiterleitungen. Diese funktionieren bei Suchmaschinen und Benutzern ohne JS gar nicht.

Hoffe es hat geholfen. Wenn nicht, einfach Kommentar hinterlassen ;)

Viele Grüße
Gordon

2 Antworten
  1. Pascal Schaufelberger
    Pascal Schaufelberger says:

    Hallo toller Beitrag. Genau das suchte ich.
    Wo muss ich diesen Code für die PHP weiterleitung eingeben?

    LG

    Antworten
    • Gordon
      Gordon says:

      Hallo Pascal,

      der Code muss in der PHP Datei eingefügt werden in der die Weiterleitung erfolgen soll. Wichtig dabei ist das der Code vor der ersten Ausgabe erfolgt. Es darf vorher nichts an den Browser gesendet werden.

      Antworten

Hinterlassen Sie einen Kommentar

Wollen Sie an der Diskussion teilnehmen?
Feel free to contribute!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.


*