IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Système] Générer une erreur 404


Sujet :

Langage PHP

  1. #1
    Membre éclairé

    Profil pro
    Inscrit en
    Mai 2002
    Messages
    641
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 641
    Par défaut [Système] Générer une erreur 404
    Bonjour,

    Dans un script PHP, j'ai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    header("HTTP/1.0 404 Not Found");
    exit( 0 );
    Dans mon .htaccess, j'ai :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ErrorDocument 404 /templates/error_404.html
    La page error_404.html ne s'affiche pas, j'ai seulement une page blanche. Ca ne fonctionne pas plus si je mets le chemin complet du fichier error_404.html.

  2. #2
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 666
    Par défaut
    il faut peut-être que tu mettes un extension ".php" à ton fichier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ErrorDocument 404 /templates/error_404.php

  3. #3
    Membre éclairé

    Profil pro
    Inscrit en
    Mai 2002
    Messages
    641
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 641
    Par défaut
    Citation Envoyé par mathieu Voir le message
    il faut peut-être que tu mettes un extension ".php" à ton fichier
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ErrorDocument 404 /templates/error_404.php
    Pourquoi ?

  4. #4
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 666
    Par défaut
    Citation Envoyé par Neuromancien2 Voir le message
    Pourquoi ?
    sur la plupart des serveurs il faut mettre l'extension .php pour que le code PHP soit exécuté

  5. #5
    Membre éclairé

    Profil pro
    Inscrit en
    Mai 2002
    Messages
    641
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 641
    Par défaut
    Citation Envoyé par mathieu Voir le message
    sur la plupart des serveurs il faut mettre l'extension .php pour que le code PHP soit exécuté
    Ma page d'erreur n'est pas un script PHP, mais une simple page HTML...

  6. #6
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 666
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 666
    Par défaut
    tu veux faire quoi avec alors avec le code PHP que tu as montré dans le 1er message ?

  7. #7
    Membre éprouvé
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 448
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 448
    Par défaut
    De toute façon, de la mnière dont tu procèdes cela ne fonctionnera pas. Car Apache affiche la page d'erreur 404,
    APRES :
    - avoir parcouru le disque à la recherche de l'url demandé
    - constaté qu'elle n'existait pas

    Hors, dans ton schéma apache :
    - A bien trouvé la page recherché
    - Donné la main à PHP

    Apache ne voit donc strictement aucune raison d'afficher une telle page avec un tel code HTTP.

    L'idéal si tu veux faire cela en gardant la partie apache, serait de pouvoir lire depuis php la valeur de ErrorDocument dans le htaccess, ensuite de simuler le comportement d'apache via un include et un header comme tu as commencé à le faire...

    M'enfin, le plus simple est encore de faire une page d'erreur PHP avec un code HTTP 404 dont tu contrôles complètement l'appel.... Et selon l'appli cela peut être préférable, des fois pas.

    bye

Discussions similaires

  1. [Système] Afficher une erreur
    Par piour dans le forum Langage
    Réponses: 19
    Dernier message: 05/11/2007, 15h35
  2. Réponses: 2
    Dernier message: 01/08/2007, 17h18
  3. [Système] Récupérer une erreur memory_limit
    Par El Riiico dans le forum Langage
    Réponses: 3
    Dernier message: 15/03/2007, 20h28
  4. Réponses: 7
    Dernier message: 25/08/2006, 14h15
  5. [PS SQL] générer une erreur en cas de mauvais traitement
    Par Piolet dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 03/08/2006, 09h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo