Aktueller Standort: Startseite> Neueste Artikel> Die richtige Möglichkeit, benutzerdefinierte HTTP -Statuscodes mit Header () festzulegen ()

Die richtige Möglichkeit, benutzerdefinierte HTTP -Statuscodes mit Header () festzulegen ()

M66 2025-05-17

In PHP wird die Header () -Funktion verwendet, um RAW -HTTP -Header -Informationen an den Browser zu senden. Es wird normalerweise zur Umleitung, zum Einstellen von Inhaltstypen, zur Steuerung von Cache, zur Festlegung von HTTP -Statuscodes und anderen Szenarien verwendet. In vielen Fällen ist der Standard -HTTP -Statuscode (z. B. 200) ausreichend, aber unter bestimmten besonderen Bedürfnissen müssen wir möglicherweise den HTTP -Statuscode anpassen. In diesem Artikel wird vorgestellt, wie die Funktion Header () verwendet wird, um benutzerdefinierte HTTP -Statuscodes korrekt festzulegen.

1. Was ist ein HTTP -Statuscode?

Der HTTP-Statuscode ist ein dreistelliger Code, der vom Server gesendet wird, wenn er auf eine Client-Anforderung antwortet, die das Ergebnis der Anforderung darstellt. Gemeinsame Statuscodes sind:

  • 200 OK: Die Anfrage war erfolgreich

  • 301 dauerhaft bewegt: dauerhaft umgeleitet

  • 404 Nicht gefunden: Seite nicht gefunden

  • 500 Interner Serverfehler: Interner Serverfehler

Sie können den Statuscode entsprechend Ihren Anforderungen anpassen, um verschiedene Anfragen und Antworten genauer zu beschreiben.

2. Wie setzen Sie einen benutzerdefinierten HTTP -Statuscode mit Header () fest?

Die grundlegende Syntax der Header () -Funktion lautet:

 header(string $header, bool $replace = true, int $http_response_code = 0)
  • $ header : Der Parameter, der übergeben werden muss, um den Inhalt der HTTP -Headerinformationen anzugeben. Sie können Inhaltstyp, Umleitung, Statuscode usw. festlegen.

  • $ ersetzen : Dies ist ein optionaler Parameter, der für TRUE standardmäßig angibt, ob die vorhandenen Header -Informationen ersetzt werden.

  • $ http_response_code : Dies ist ein optionaler Parameter, um den HTTP -Statuscode anzugeben. Wenn der Parameter 0 beträgt, setzt Header () den Statuscode automatisch gemäß dem von Ihnen angegebenen Headerwert.

Festlegen des benutzerdefinierten HTTP -Statuscode

Um einen benutzerdefinierten HTTP -Statuscode festzulegen, geben Sie einfach HTTP/1.1 in der Funktion header () an, gefolgt von dem benutzerdefinierten Statuscode und Beschreibungsinformationen. Beispiele sind wie folgt:

 <?php
// aufstellen 404 Not Found Statuscode
header("HTTP/1.1 404 Not Found");
?>

Wenn Sie einen bestimmten Statuscode und eine bestimmte Beschreibung für eine Anforderung zurückgeben müssen, können Sie auch Codes wie folgende verwenden:

 <?php
// aufstellen 403 Forbidden Statuscode
header("HTTP/1.1 403 Forbidden");
?>

Sie können den Standard -HTTP -Statuscode auf ähnliche Weise festlegen. Ändern Sie einfach den Statuscode und die Beschreibung auf das, was Sie benötigen.

3.. Praktische Anwendungsbeispiele

Beispiel 1: Benutzerdefinierte 404 Fehlerseite

Nehmen wir an, Sie entwickeln eine Website und möchten eine benutzerdefinierte 404 -Fehlerseite zurückgeben, wenn der Benutzer eine Seite besucht, die nicht vorhanden ist. Sie können den folgenden Code verwenden:

 <?php
// aufstellen 404 Not Found Statuscode
header("HTTP/1.1 404 Not Found");

// Wille URL Fehlerseite in(Zum Beispiel, 'error.php')Dem Benutzer anzeigen
include('error.php');
?>

In diesem Beispiel gibt der Server einen 404 -Statuscode zurück und zeigt die Seite "Fehler.Php ), wenn der Benutzer auf eine Seite zugreift, die nicht vorhanden ist.

Beispiel 2: Auf einer anderen Seite umleiten

Wenn Sie den Benutzer unmittelbar nach dem Zugriff der Seite zu einer anderen URL umleiten möchten, können Sie den folgenden Code verwenden:

 <?php
// aufstellen 301 永久重定向Statuscode
header("HTTP/1.1 301 Moved Permanently");

// aufstellen新的重定向 URL
header("Location: https://m66.net/newpage");
exit;
?>

Dieser Code leitet den Benutzer auf https://m66.net/newpage um und teilt dem Browser mit, dass dies eine dauerhafte Weiterleitung ist.

Beispiel 3: Passen Sie die 500 Fehlerseite an

Wenn Sie auf einen internen Serverfehler stoßen, können Sie den 500 -Statuscode festlegen und eine benutzerdefinierte Fehlerseite wie folgt zurückgeben:

 <?php
// aufstellen 500 Internal Server Error Statuscode
header("HTTP/1.1 500 Internal Server Error");

// Kehren Sie zur benutzerdefinierten Fehlerseite zurück
include('500_error.php');
?>

In diesem Beispiel wird die Seite 500_Error.php dem Benutzer angezeigt, wodurch er darüber informiert wird, dass ein Serverfehler aufgetreten ist.

4.. Dinge zu beachten

  • Die Header () -Funktion muss vor einer Ausgabe aufgerufen werden, andernfalls werden die HTTP -Header -Informationen nicht geändert. Wenn Sie vor dem Aufrufen der Header () -Funktion eine HTML -Ausgabe oder Echoausgabe haben, verursacht dies einen Fehler.

  • Jede Seite kann nur einmal HTTP -Headerinformationen senden. Achten Sie beim Aufrufen der Header () -Funktion mehrmals besondere Aufmerksamkeit und legen Sie nicht wiederholt denselben Statuscode oder Header -Informationen fest.

  • Wenn Sie umgeleitet werden möchten, denken Sie daran, den Beenden nach dem Header () hinzuzufügen, da das Programm ansonsten weiterhin nachfolgende Code ausführt, was zu unnötigem Verhalten führt.

5. Zusammenfassung

Die Header () -Funktion ist ein sehr leistungsstarkes Tool in PHP, mit dem HTTP -Statuscodes festgelegt, die Seitenumleitung, den Steuercache usw. durchgeführt werden können. Durch die rationale Verwendung der Funktion Header () können wir die Benutzererfahrung und das Browserverhalten besser steuern. Wenn Sie während der Entwicklung einen bestimmten Statuscode an den Benutzer zurückgeben müssen, sollten Sie die HTTP -Headerinformationen korrekt festlegen, um die Stabilität und Korrektheit der Website zu gewährleisten.