Wie Umleiten von URLs in PHP

In diesem Programm Tutorial werden wir verschiedene Methoden suchen URLs in PHP zu umleiten. Insbesondere werden wir 301 URL-Methoden über Code umleiten werden untersuchen, Meta-Refresh und die Verwendung von Header-Standorteinstellungen PHP eine Umleitung aufzurufen.







2.) Es ist ein flexibler und vielseitiger Ansatz; können Sie verschiedene Arten von Umleitungen in PHP, dass man nicht mit anderen Methoden ausführen. Im Folgenden sind die am häufigsten Arten von Umleitungen zum Beispiel, die in PHP getan werden kann:

a.) 301 permanente Umleitung Status.
b.) 302 temporäre Umleitungsstatus.
c.) Aktualisieren Typ

Es gibt noch anderen Umleitungskopfstatus, die Sie mit PHP zu tun, aber dieses Tutorial auf den oben genannten Typen von Umleitung URLs konzentrieren. Dies ist hilfreich für Webmaster beginnen, die nach Möglichkeiten suchen, URL-Umleitung zu implementieren, wenn es nicht möglich, mit anderen gängigen Lösungen wie .htaccess ist.

Die PHP-Header () Funktion

1.) Öffnen Sie einen Texteditor und geben Sie diesen Code ein:

Speichern Sie es als targetpage.php und legte es in den htdocs Ordner.

2.) Öffnen Sie eine weitere leere Textdatei und geben Sie diesen Code:

Speichern Sie es als originatingpage.php und setzen es auch in den htdocs Ordner.

2.) im Browser Ansicht und klicken Sie auf „Firebug“.
3.) Klicken Sie auf „Net“ aus.
4.) Klicken Sie nun auf die Browser-Adressleiste und drücken Sie Enter um die Seite zu laden.
5.) Sie werden feststellen, dass nach dem Enter-Taste, die Server-Header Statusdetails in dem Firebug-Net-Panel zeigen. Dies ist, wie es aussieht:

Wie Umleiten von URLs in PHP

Da es enthält die folgende Zeile:

1.) Standardmäßig ist diese Zeile:

Gibt einen 302 gefundenen Umleitungsstatus.

2.) Nach Umleitung wird die Seite mit einem 200 OK Kopfstatus gegeben.







Fehler: Ausgabe HTML oder sogar Leerzeichen vor Header ()

Jetzt haben Sie eine sehr grundlegende Kenntnisse, wie Header () zu verwenden, URLs zu umleiten. Gehen wir tiefer, um eine allgemeine Gefahr dar, wenn Umleitungen zu tun. Versuchen Sie dieses Experiment:

1.) Zum Skript originatingpage.php und fügen Sie alle HTML-Tags vor:

Angenommen, Sie haben diesen Code:

Warnung: - Header bereits gesendet von (Ausgabe begann bei /home/phpdevel/public_html/originatingpage.php:6) in /home/phpdevel/public_html/originatingpage.php auf Linie 7 kann nicht Header-Informationen ändern

Was ist denn hier los? Die Ursache des Problems ist, dass Sie bereits HTML-Ausgabe vor header () Funktion. In diesem Fall ist dies die HTML Sie bereits basierend auf dem obigen Beispiel ausgegeben:



Dies ist ein Beispiel, das die Umleitung fehlschlagen

2.) Sie sollte nie ausgegeben, auch einen einzelnen HTML-Zeichen, Tag oder Text vor dem header () Funktion. Dazu gehören Räume. Beispiele unten wird nicht funktionieren:

Hinweis: Sie ausgegeben

Tags vor Header.

Hinweis: Sie müssen ein Leerzeichen vor dem PHP Starttag.

Die Umleitung Code wird sein:

Gemeinsame 301 Umleitung PHP-Code Beispiele (immer daran denken, diese Codes über jeden HTML zu platzieren und dafür sorgen, dass HTML nicht ausgegeben wird zuerst):

1.) Conditional 301-Weiterleitung (Umleitung, wenn die URL auf eine gegebene URL übereinstimmt)

Equate // die aktuelle URL mit $ currentpageurl Variable
$ Currentpageurl = currentpageurl ();

// Holen Sie sich aktuelle Seite URL
$ Currentpageurl = $ _SERVER [ ‚HTTP_HOST '] $ _ SERVER [‚REQUEST_URI'].

// Prüfen, ob die URL nicht-www-Version
if (! (preg_match ( "/ www / i", $ currentpageurl)))

// 301 umleiten auf die www-Version
header ( "Location: $ wwwversion", TRUE, 301);
Ausfahrt();
>
?>

3.) 301 umleiten alle HTTP zu HTTPS (nicht sicherer Umleitung 301 zu sichern):

// Prüfen, ob er nicht den sicher Port verwendet, die 443
if ($ _SERVER [ "SERVER_PORT"]! = "443")

// nicht eine Verbindung über eine sichere HTTPS-Port
. Diese URL wird unter Verwendung von HTTP-Protokoll

// Umleiten auf die sichere Version
header ( "Location: $ secureversion", TRUE, 301);
Ausfahrt();
>

echo „Hallo, hier wird jede nicht-sichere Seite gleichwertig sichere Seite umleiten“;
?>

Eine andere Art der Umleitung ist die Refresh-Art von Umleitung. Dies ist leicht in HTML als Meta-Refresh-Weiterleitung erfolgen. In PHP, können Sie dies wie folgt:

Dies ist nicht eine suchmaschinenfreundliche Umleitung und zusammen mit 302-Umleitung, sollte es nicht für SEO Zwecke verwendet werden. Das einzige, was die meisten Suchmaschinen wie Google ist die 301-Weiterleitung akzeptabel ist.

Verwandte Themen

In Verbindung stehende Artikel







In Verbindung stehende Artikel