Position actuelle: Accueil> Derniers articles> Tutoriel PHP: comment mettre correctement en œuvre une redirection permanente 301

Tutoriel PHP: comment mettre correctement en œuvre une redirection permanente 301

gitbox 2025-08-02

Introduction de fond

301 JUMP signifie que lorsqu'un utilisateur accède à une certaine URL, le serveur redirigera définitivement la demande vers une autre URL et renvoie le code d'état 301. Cette méthode est souvent utilisée pour l'ajustement de la structure URL du site Web, la migration de page permanente ou la redirection en fonction des périphériques terminaux. L'opération de saut 301 est simple, flexible et efficace en PHP.

Le principe de la mise en œuvre de PHP 301 Jump

Utilisez la fonction en-tête () pour sauter

Dans PHP, vous pouvez envoyer des en-têtes de réponse HTTP via la fonction d'en-tête (), définir le champ d'emplacement sur l'URL cible, réalisant ainsi le saut.

 header("Location: https://www.example.com/new-url", true, 301);
exit;

Le code ci-dessus redirige le visiteur vers l'URL spécifié et renvoie un code d'état 301. Le deuxième paramètre True signifie remplacer l'en-tête par le même nom avant.

Utilisez http_response_code () avec en-tête ()

Une autre méthode consiste à appeler http_response_code () pour définir d'abord le code d'état, puis à définir l'en-tête d'emplacement via l'en-tête ().

 http_response_code(301);
header("Location: https://www.example.com/new-url");
exit;

Cette méthode d'écriture sépare le code d'état et l'adresse de saut, ce qui rend la logique plus claire.

Exemple de code

L'exemple suivant montre le code complet de l'implémentation de 301 sauts:

 $url = "https://www.example.com/new-url";

// Méthode un:headerImplémentation de la fonction
header("Location: $url", true, 301);
exit;

// Méthode 2:http_response_codeetheaderImplémentation de la fonction
http_response_code(301);
header("Location: $url");
exit;

Choses à noter

Désactivez toute sortie avant de sauter

Avant d'appeler Header (), il ne peut y avoir de sortie de page, y compris des espaces, des pauses de ligne ou des balises HTML. Sinon, cela entraînera un échec de saut ou un avertissement.

 // Exemple d'erreur
echo "Hello World!";
header("Location: https://www.example.com");
exit;

// Exemple correct
header("Location: https://www.example.com");
exit;

Commande de réglage du code d'état

Si vous utilisez http_response_code () pour définir le code d'état, cela doit être fait avant d'appeler l'en-tête () pour définir l'en-tête d'emplacement. Étant donné que lors de la définition de l'emplacement, le code d'état passera automatiquement à la valeur par défaut de 200.

 // Exemple d'erreur
header("Location: https://www.example.com");
http_response_code(301);
exit;

// Exemple correct
http_response_code(301);
header("Location: https://www.example.com");
exit;

Résumer

PHP implémente 301 SUMP Operation Simple and Practical, et peut facilement y faire face, qu'il s'agisse d'un ajustement de l'URL de la page ou d'une redirection inter-terminale. Utilisez simplement les fonctions en tête () et http_response_code () et assurez-vous aucune sortie à l'avance, afin que les sauts puissent être stables et fiables.