Bonjour,
je me suis développé une petite fonction pour gêrer mes 301 internes sans devoir systématiquement mettre à jour mon htaccess, et surtout pouvoir y atteler certaines conditions.
Cependant, depuis le site ne fonctionne plus que sur Firefox, tous les autres navigateurs me donnent une erreur de page inexistante si j'appelle cette fonction.
Est-ce que quelqu'un peux m'expliquer ce que j'ai mal fait ?
$racine_home =
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 // Redirection en interne pour url précise function in301($url, $url_out) { global $$url; // On informe de la 301 header("Status: 301 Moved Permanently", false, 301); // On crée la 301 if(empty($url)) { header("Location: http://".$_SERVER['SERVER_NAME'].$racine_home."/".$url); } else { // Si l'url demandée correspond à if ($_SERVER['REQUEST_URI'] == $racine_home.'/'.$url) { header("Location: http://".$_SERVER['SERVER_NAME'].$racine_home."/".$url_out); } } return $url; }
edit : la fonction est apellée comme ce :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 // initialisation de la racine de votre site ( meilleure gestion du rewriting // By Crazy aka Alain Gaydon | http://www.cigiema.fr $repertoire = explode("/", $_SERVER["PHP_SELF"]); $racine_home = '/'.$repertoire[1]; if ($racine_home == $_SERVER["PHP_SELF"]) $racine_home = '';
in301('page.php','page/');
in301('index.php',$racine_home);
etc...
Partager