Htaccess ErrorDocument ne fonctionne pas tout le temps

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par devilyann, 30 Avril 2018.

Tags:
  1. devilyann
    devilyann WRInaute discret
    Inscrit:
    22 Février 2009
    Messages:
    79
    J'aime reçus:
    0
    Bonjour à tous

    Suite à une demande de mon client suite à un audit externe, il m'a été demandé que lorsqu'une page n'existe pas, de garder l'ancienne url dans le navigateur, et plus l'url 404.html que j'affichais.

    J'ai donc rajouté dans le fichier htaccess la ligne suivante :
    Code:
    ErrorDocument 404 /404.html
    
    Or cette directive ne marche que pour les urls de type https://www.monsite.com/urlfausse et non https://www.monsite.com/urlfausse.html, donc sans le .html à la fin.
    J'ai donc dû garder mon code php que j'utilisais et qui testait que si le fichier php n'existait pas alors que je faisais la redirection 301 vers cette page 404.

    Pourquoi est ce que ça ne marche pas pour les pages avec un .html ?
     
  2. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    9 176
    J'aime reçus:
    327
    Parce que tu fais une redirection vers la page 404. Du coup on devine qu'elle est servie en 200.
    Tu dois servir une 404 avec les pages avec un .html aussi (avec PHP au lieu de la 301).
     
  3. devilyann
    devilyann WRInaute discret
    Inscrit:
    22 Février 2009
    Messages:
    79
    J'aime reçus:
    0
    J'avoue que je n'ai pas du tout compris ta solution... :/
    tu pourrais stp donner un peu de code ?
     
  4. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    9 176
    J'aime reçus:
    327
    Réponse courte: Pour les fichiers.html, au lieu de faire une redirection 301, tu renvoies un header 404 en PHP.
     
  5. devilyann
    devilyann WRInaute discret
    Inscrit:
    22 Février 2009
    Messages:
    79
    J'aime reçus:
    0
    Actuellement pour les fichiers.html, je mets ce code :

    Code:
    if(!file_exists("include/pg.{$_PG}.php")){
       header("Status: 301 Moved Permanently", false, 301);
       header("Location: 404.html");
       exit(); 
    }
    
    Tu veux que je fasse ça ? :

    Code:
    if(!file_exists("include/pg.{$_PG}.php")){
    header("HTTP/1.x 404 Not Found");
    exit();   
    }
    Attention, j'ai besoin que ce soit une redirection 301
     
  6. spout
    spout WRInaute accro
    Inscrit:
    14 Mai 2003
    Messages:
    9 176
    J'aime reçus:
    327
    Pourquoi ?

    PHP:
    <?php
    if(!file_exists("include/pg.{$_PG}.php")){
    header("HTTP/1.x 404 Not Found");
    include(
    '404.html');
    exit();   
    }
     
  7. devilyann
    devilyann WRInaute discret
    Inscrit:
    22 Février 2009
    Messages:
    79
    J'aime reçus:
    0
    Comment ça pourquoi ? pour éviter le fameux duplicate content ;)
    est ce que l'entête 404 l'évite ?
     
  8. devilyann
    devilyann WRInaute discret
    Inscrit:
    22 Février 2009
    Messages:
    79
    J'aime reçus:
    0
    En tout cas je viens de le faire, ça marche nickel pour l'url, merci :)
     
Chargement...
Similar Threads - Htaccess ErrorDocument fonctionne Forum Date
htaccess errordocument me fait perdre ID de session Développement d'un site Web ou d'une appli mobile 18 Août 2019
htaccess qui fonctionne partout sauf sur 1 seul PC URL Rewriting et .htaccess 28 Juillet 2021
modification fichier htaccess URL Rewriting et .htaccess 25 Juillet 2021
Protection de site web : quel code ajouter dans htaccess ? URL Rewriting et .htaccess 5 Mars 2021
Blocage d'un visiteur via le fichier .htaccess URL Rewriting et .htaccess 5 Janvier 2021
sécurité avec htaccess URL Rewriting et .htaccess 18 Décembre 2020
Récriture .htaccess (sous-domaine + répertoire) URL Rewriting et .htaccess 11 Août 2020
Le htaccess de WordPress réécrit une URL qui n'est pas censé être réécrite Administration d'un site Web 17 Juin 2020
Problème htaccess Développement d'un site Web ou d'une appli mobile 26 Mai 2020
Redirection dans .htaccess Développement d'un site Web ou d'une appli mobile 11 Mai 2020