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

Apache Discussion :

Problème avec ErrorDocument


Sujet :

Apache

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 044
    Par défaut Problème avec ErrorDocument
    Bonsoir, j'ai voulus me faire un pti script perso pour gèrer mes pages d'erreur apache.
    J'ai donc mis ceci dans un .htaccess a la racine
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    ErrorDocument 400 ./nofile.php?400
    ErrorDocument 401 ./nofile.php?401
    ErrorDocument 402 ./nofile.php?402
    ErrorDocument 403 ./nofile.php?403
    ErrorDocument 404 ./nofile.php?404
    ErrorDocument 405 ./nofile.php?405
    ErrorDocument 500 ./nofile.php?500
    ErrorDocument 501 ./nofile.php?501
    ErrorDocument 502 ./nofile.php?502
    ErrorDocument 503 ./nofile.php?503
    ErrorDocument 504 ./nofile.php?504
    ErrorDocument 505 ./nofile.php?505
    Le script php :
    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
     
    <?php
    if(isset($_GET['400'])){
    echo 'Echec de l\'analyse HTTP';
    redirection($page);
    }
    elseif(isset($_GET['401'])){
    echo "Le pseudo et/ou le mot de passe n'est pas correct !".
    '<b style="color:blue">Vous allez &ecirc;tre rediriger dans quelques secondes</b>';
    redirection($page);
    }
    elseif(isset($_GET['402'])){
    echo 'Le client doit reformuler sa demande avec les bonnes donnes de paiement.';
    }
    elseif(isset($_GET['403'])){
    echo 'Requ&ecirc;te interdite !<br/>'.
    '<b style="color:blue">Vous allez &ecirc;tre rediriger dans quelques secondes</b>';
    redirection($page);
    }
    elseif(isset($_GET['404'])){
    echo "La page n'existe pas ou n'existe plus !<br/>".
    '<b style="color:blue">Vous allez &ecirc;tre rediriger dans quelques secondes</b>';
    redirection($page);
    }
    elseif(isset($_GET['405'])){
    echo 'M&eacute;thode non autorise';
    }
    elseif(isset($_GET['500'])){
    echo 'Erreur interne au serveur ou serveur satur&eacute;';
    }
    elseif(isset($_GET['501'])){
    echo 'Le serveur ne supporte pas le service demand&eacute;';
    }
    elseif(isset($_GET['502'])){
    echo 'Mauvaise passerelle';
    }
    elseif(isset($_GET['502'])){
    echo ' Service indisponible';
    }
    elseif(isset($_GET['503'])){
    echo 'Service indisponible';
    }
    elseif(isset($_GET['504'])){
    echo 'Trop de temps pour la r&eacute;ponse ';
    redirection($page);
    }
    elseif(isset($_GET['505'])){
    echo 'Version HTTP non supporte ';
    }
    else{
    echo 'Erreur !!';
    } 
    ?>
    Alors si je clique sur une page qui n'existe pas j'ai une page blanche avec l'url que j'ai demandé + ce texte "./nofile.php?404"
    C'est quand même bizarre normalement sa devrais renvoyer vers la page nofile et indiquer le message correspondant a l'erreur.
    Alors si je vire le point "./nofile.php?404" devant le slash dans le htaccess sa ne fonctionne plus et renvoi le message classique d'apache
    Une idée, je précise que je suis sous windows car sous nunux c'est tt différent

  2. #2
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    Vous devriez les écrire sans point et le chemin vers le script PHP dépend de son emplacement. A noter que la directive ErrorDocument n'est effective que si la configuration du serveur vous le permet (AllowOverride devant posséder au moins la valeur FileInfo pour ce répertoire - de manière explicite ou implicite, ie par héritage).

    PS : le comportement d'Apache sur la question sera strictement identique quelque soit l'OS.

  3. #3
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 044
    Par défaut
    Pour activer AllowOverride je doit le chercher dans le httpd.conf ?
    C'est un peux particulier pour moi qui n'est pas l'habitude de chipoter dans la config apache
    Le script php ce trouve au même niveau que mon htaccess mais pour l'histoire du point je pense que c'étais sur le forum de wamp qu'ont me l'avais conseillé sans savoir vraiment pourquoi

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    Citation Envoyé par gtraxx
    Pour activer AllowOverride je doit le chercher dans le httpd.conf ?
    Oui.

    Citation Envoyé par gtraxx
    Le script php ce trouve au même niveau que mon htaccess mais pour l'histoire du point je pense que c'étais sur le forum de wamp qu'ont me l'avais conseillé sans savoir vraiment pourquoi
    Avec le . au début (ou sans slash), Apache considère le deuxième paramètre comme le message (texte) à renvoyer au client en cas d'erreur et non le document (la page) à lui renvoyer. Mais vu que celui-ci est situé à la racine la valeur /nofile.php?XYZ est correcte.

    (le comportement peut être légèrement différent suivant la version d'Apache utilisée)

  5. #5
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 044
    Par défaut
    merci je vais regarder pour le httpd.conf car si j'enlève le point tel quel page blanche donc c'est bien un prob de config dans apache.
    Pour wamp c'est la version 1.7.3 qui utilisais apache Apache 2.2.3

  6. #6
    Membre éprouvé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 044
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 044
    Par défaut
    Sa ne fonctionne toujours pas, c'est tout de même curieux
    J'ai bien AllowOverride activer (AllowOverride All) mais aucune redirection vers mon fichier d'erreur.
    Doit je vérifier autre chose dans httpd.conf ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    ErrorDocument 400 /nofile.php?400
    ErrorDocument 401 /nofile.php?401
    ErrorDocument 402 /nofile.php?402
    ErrorDocument 403 /nofile.php?403
    ErrorDocument 404 /nofile.php?404
    ErrorDocument 405 /nofile.php?405
    ErrorDocument 500 /nofile.php?500
    ErrorDocument 501 /nofile.php?501
    ErrorDocument 502 /nofile.php?502
    ErrorDocument 503 /nofile.php?503
    ErrorDocument 504 /nofile.php?504
    ErrorDocument 505 /nofile.php?505
    Logiquement il devrait être pris en compte mais rien

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème avec ErrorDocument 404 et les images
    Par saluts92 dans le forum Apache
    Réponses: 4
    Dernier message: 13/06/2013, 21h18
  2. VC++ Direct3D8, problème avec LPD3DXFONT et LPD3DTEXTURE8
    Par Magus (Dave) dans le forum DirectX
    Réponses: 3
    Dernier message: 03/08/2002, 11h10
  3. Problème avec le type 'Corba::Any_out'
    Par Steven dans le forum CORBA
    Réponses: 2
    Dernier message: 14/07/2002, 18h48
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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