150 votes

Apache: client refusé par la configuration du serveur

Je reçois

[Mar Apr 24 12:12:55 2012] [erreur] [client 127.0.0.1] client refusé par la configuration du serveur: / labs / Projects / Nebula / bin /

Ma structure de répertoire ressemble à (j'utilise Symfony 2, la structure devrait être similaire à celle des autres frameworks Web)

entrer la description de l'image ici

J'ai la configuration de vhosts comme:

 <VirtualHost nebula:80>
    DocumentRoot "/labs/Projects/Nebula/web/"
    ServerName nebula
    ErrorLog "/var/log/httpd/nebula-errors.log"
</VirtualHost>

<Directory "/labs/Projects/Nebula/">
    Options All
    AllowOverride All
    Order allow,deny
    Allow from 127.0.0 192.168.1 ::1 localhost
</Directory>
 

Je me demande quel est le problème et comment le réparer?

395voto

Phil L Points 2856

Apache 2.4.3 (ou peut-être un peu plus tôt) ajout d'une nouvelle fonctionnalité de sécurité qui entraîne souvent cette erreur. Vous devriez également voir un message de journal de la forme "client denied by server configuration". La fonction consiste à demander à un utilisateur autorisé d'identité pour accéder à un répertoire. Elle est activée par DÉFAUT dans le httpd.conf fourni avec Apache. Vous pouvez voir l'activation de la fonctionnalité avec la directive

Require all denied

Cela dit en fait de refuser l'accès à tous les utilisateurs. Pour résoudre ce problème, supprimez le refus de la directive (ou mieux) ajouter la directive suivante dans les répertoires que vous souhaitez accorder l'accès à:

Require all granted

comme dans

<Directory "your directory here">
   Order allow,deny
   Allow from all
   # New directive needed in Apache 2.4.3: 
   Require all granted
</Directory>

11voto

Jiew Meng Points 10155

OK, j'utilise la mauvaise syntaxe, je devrais utiliser

 Allow from 127.0.0.1
Allow from ::1
...
 

1voto

MauricioOtta Points 39

Pouvez-vous essayer de modifier "Autoriser de 127.0.0 192.168.1 :: 1 localhost" à "Autoriser de tous". Si cela résout votre problème, vous devez limiter le nombre de demandes de contenu.

1voto

cb0 Points 1674

Voici mon symfony 1.4 fichier hôte virtuel sur debian, qui fonctionne très bien.

  <Directory /var/www/sf_project/web/>
    Options All Indexes FollowSymLinks    
    AllowOverride All
    Order allow,deny
    Allow from all
  </Directory>

Si vous wan pas à restreindre l'accès à une plage d'adresses ip, par exemple localhost utiliser ceci:

Allow from 127.0.0.0/8

Le mod_authz_host est responsable du filtrage des plages d'adresses ip. Vous pouvez regarder des choses là-dedans.

Mais peut-être que le problème pourrait être lié à une sorte de mauvaise configuration dans votre "apache2.conf".

Sur quel OS est le apache en cours d'exécution?

1voto

Satya Points 504

si vous avez le

 Allow from All
 

dans httpd.conf alors assurez-vous d'avoir

index.php

comme dans la ligne ci-dessous dans httpd.conf

 DirectoryIndex index.html index.php
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X