Bonjour,
J'ai pris un hébergement chez 1&1 pour mon site et malheureusement tous ne fonctionne pas comme en local. Notamment aux niveaux de la redirection 404 si l'utilisateur va sur une page qui n'existe pas. Le navigateur charge puis finis par m'indiquer La page n'est pas redirigée correctement. Sachant que la réécriture d'url fonctionne bien.
Je rappel qu'en local tous marche bien, voilà mon .htaccess
Et voilà la manière dont je fais ma redirection sur le php :
Voilà, merci de votre aide
J'ai pris un hébergement chez 1&1 pour mon site et malheureusement tous ne fonctionne pas comme en local. Notamment aux niveaux de la redirection 404 si l'utilisateur va sur une page qui n'existe pas. Le navigateur charge puis finis par m'indiquer La page n'est pas redirigée correctement. Sachant que la réécriture d'url fonctionne bien.
Je rappel qu'en local tous marche bien, voilà mon .htaccess
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
# Réécriture simple des pages principales
RewriteRule services/([a-zA-Z0-9\-]+).html index.php?p=$1
RewriteRule contact/([a-zA-Z0-9\-]+).html contact.php?p=$1
RewriteRule enseignement/([a-zA-Z0-9\-]+).html secteur.php?p=$1
RewriteRule formation/([a-zA-Z0-9\-]+).html secteur.php?p=$1
RewriteRule formation/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+).html secteur.php?p=$1&r=$2
RewriteRule conseil/([a-zA-Z0-9\-]+).html secteur.php?p=$1
RewriteRule conseil/([a-zA-Z0-9\-]+)/([a-zA-Z0-9\-]+).html secteur.php?p=$1&r=$2
# Erreur prévu
RewriteRule erreur/([0-9]+).html erreur.php?p=$1
# --------------
# Erreur général
ErrorDocument 403 http://site.fr/erreur/403.html
ErrorDocument 404 http://site.fr/erreur/404.html
Et voilà la manière dont je fais ma redirection sur le php :
<?php
// Inclusion de RACINE_URL
if(isset($_GET['p']) && !empty($_GET['p'])){
$p = htmlspecialchars($_GET['p']);
// Pages autorisées
$pages_autorisees = array('index' => array('Accueil', 'page/index.php'),
'page2' => array('page2', 'page/page2.php')
// ....
);
if(array_key_exists($p, $pages_autorisees)){
// Vérifications
}
else{ // Si la page n'est pas autorisée
header('location:'.RACINE_URL.'erreur/404.html');
}
}
else
header('location:'.RACINE_URL.'services/index.html');
Voilà, merci de votre aide
