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 :

Fichier .htaccess - deny -Erreur 403 - environnement PHP


Sujet :

Apache

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Octobre 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2013
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Fichier .htaccess - deny -Erreur 403 - environnement PHP
    Bonjour à tous !

    Mon problème est le suivant :

    Mon fichier .htaccess contient des clauses DENY, et selon les cas, j'observe des résultats différents.

    1) Si ErrorDocument 403http://www.monsite/403.php , dans ce cas, je ne peux pas récupérer la variable $_SERVER[''REQUEST_URI'] dans un programme PHP, car cette variable contient : [REQUEST_URI] => /403.php, ce qui semble logique. (identique d'ailleurs à la variable $_SERVER['REDIRECT_URL'] ...

    2) Si ErrorDocument 403 n'est pas stipulée dans le .htaccess , et que je laisse APACHE gérer l'interdiction 403, la variable $_SERVER[''REQUEST_URI'] est correcte et contient la requête/chemin qui cause l'erreur 403 ...

    Ceci pourrait convenir, mais dans ce 2e cas, la plupart des clauses DENY du fichier .htaccess ne sont plus activées !

    Ce qui est étonnant, c'est que certaines clauses DENY fonctionnent dans le cas 2), et d'autres pas.

    Exemple 2)
    Options +FollowSymLinks
    RewriteEngine on
    ........
    SetEnvIfNoCase User-Agent "^Zeus" bad_bot
    SetEnvIfNoCase User-Agent "ZmEu" bad_bot
    SetEnvIfNoCase User-Agent "^Zyborg" bad_bot
    ......
    order allow,deny
    allow from all
    deny from env=bad_bot ---> fonctionne correctement
    deny from 74.117.56.0/21 108.171.240.0/20 173.224.208.0/20 ---> ne fonctionne pas
    deny from .romhacking.net.ru ---> ne fonctionne pas

    Exemple 1)
    Options +FollowSymLinks
    RewriteEngine on
    ErrorDocument 403http://www.monsite/403.php
    ........
    SetEnvIfNoCase User-Agent "^Zeus" bad_bot
    SetEnvIfNoCase User-Agent "ZmEu" bad_bot
    SetEnvIfNoCase User-Agent "^Zyborg" bad_bot
    ......
    order allow,deny
    allow from all
    deny from env=bad_bot ---> fonctionne correctement
    deny from 74.117.56.0/21 108.171.240.0/20 173.224.208.0/20 ---> fonctionne correctement
    deny from .romhacking.net.ru ---> fonctionne correctement

    Est-ce que quelqu'un aurait une petite idée ?

  2. #2
    Membre éprouvé Avatar de Marc3001
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2008
    Messages
    829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Février 2008
    Messages : 829
    Points : 1 275
    Points
    1 275
    Par défaut
    Pourquoi certains deny ne passent pas quand tu configures le errorDocument je ne sais pas.

    Par contre c'est parceque tu utilises une url absolu que tu ne peux pas utiliser REQUEST_URI.
    Tu devrais plutot utiliser une url relative, dans ce cas Apache ne feras pas une redirection.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ErrorDocument 403 /403.php

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Octobre 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Octobre 2013
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Citation Envoyé par Marc3001 Voir le message
    Pourquoi certains deny ne passent pas quand tu configures le errorDocument je ne sais pas.

    Par contre c'est parceque tu utilises une url absolu que tu ne peux pas utiliser REQUEST_URI.
    Tu devrais plutot utiliser une url relative, dans ce cas Apache ne feras pas une redirection.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ErrorDocument 403 /403.php

    Merci ....

    J'utilise une url absolue, parce que l'URL relative me conduit à une erreur 404 !

    ErrorDocument 403 /htdocs/public/www/TESTACCESS/403.php -> DENY fonctionne, mais erreur 404 sur le fichier 403.php
    (adresse récupérée avec realpath("403.php" )

    Forbidden
    You don't have permission to access /TESTACCESS/FICHIER.php on this server.
    Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.


    ErrorDocument 403 http://www.monsite.com/TESTACCESS/403.php
    -> DENY fonctionne, mais je perds naturellement la variable REQUEST_URI qui se transforme en /TESTACCESS/403.php

    ErrorDocument 403 /TESTACCESS/403.php -> DENY ne fonctionne pas ???

    J'y perds mon latin !

Discussions similaires

  1. Utilisation d'un htaccess-> erreur 403 Forbiden
    Par guigui5931 dans le forum Apache
    Réponses: 4
    Dernier message: 01/06/2008, 19h20
  2. Erreur 403 IIS + PHP
    Par kitana dans le forum IIS
    Réponses: 1
    Dernier message: 23/01/2008, 16h34
  3. [htaccess] Erreur 403 non voulue :(
    Par mick49 dans le forum Apache
    Réponses: 1
    Dernier message: 29/04/2007, 14h52
  4. Réponses: 5
    Dernier message: 19/09/2006, 21h51
  5. htaccess - erreur 403 - protéger un dossier image
    Par lepierre dans le forum Apache
    Réponses: 2
    Dernier message: 30/06/2006, 13h59

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