====== Mettre en place une redirection définitive en PHP ====== De nombreux webmasters doivent faire face, un jour ou l'autre, a devoir mettre en œuvre un changement d'URL ou a modifier l'arborescence de son site. On peut utiliser un script PHP((on peut aussi utiliser la redirection Apache2)) pour mettre en place une redirection définitive d'URL. Fonctionne sur PHP 4, PHP 5 et PHP 7 ===== Pourquoi mettre en place des redirections ? ===== Lorsque l'on change de place une page web, il y a un risque important que les liens externes pointant sur cette page fassent arriver les utilisateurs sur une //''page erreur 404''//. Les moteurs de recherche risques donc de réinitialiser le **référencement** de la page et donc de voir la qualité de **référencement** du site diminué. Pour éviter tous ces désagréments on peut mettre en place des **redirections définitives**. Nous allons utiliser la fonction //header() //de **PHP**. ===== Les entêtes HTTP ===== Lors du chargement du page, le serveur envoi au navigateur une entête HTTP, en général c'est un //code HTTP 200 (OK)//. Il existe un code pour informer le navigateur que la page demandé a été déménagé à une autre adresse, c'est le code HTTP 301 (moved permanently). Si un caractère est envoyé avant un **en-tête HTTP** une erreur de type //"headers already sent by"// se produira. ===== Le code ===== Voici un exemple de code : La première ligne de ce code permet d'indiquer qu'il s'agit d'une redirection permanente //Status: 301 Moved Permanently//. La seconde ligne permet d'indiquer l'URL de la nouvelle page. il est conseillé de rajouter la commande //exit()// après la commande //header()// pour éviter que le serveur interprète le code **PHP** situé après. Ceci pour éviter de faire travailler le serveur pour rien. ===== Notes de version ===== * [27/12/2015] : Article initial * [17/11/2017] : Mise à jour de l'article ===== Auteurs et sources ===== * Auteur : [[:user:montuy337513]] ===== Navigation ===== * [[:accueil|Accueil]] * [[:gestion-site-internet]] * [[:tutoriel-javascript]] * [[:tutoriel-html]] * [[:tutoriel-php-mysql]] * [[:tutoriel-referencement-seo]]