FAQ du serveur HTTP Apache
FAQ du serveur HTTP ApacheConsultez toutes les FAQ
Nombre d'auteurs : 9, nombre de questions : 47, dernière mise à jour : 14 juin 2021
- L'erreur "Forbidden" (403)
- L'erreur "Internal Server Error" (500)
- L'erreur "Could not reliably determine the server's fully qualified domain name, using x.x.x.x for ServerName"
- Que faire lorsque le port 80 est déjà occupé ?
- Pourquoi mon authentification par fichiers .htaccess/.htpasswd ne fonctionne pas ?
- Je suis sous Windows 2000 ou XP, et Apache 2 tronque les pages et fichiers envoyés au client. Que se passe-t-il ? Comment y remédier ?
Cette erreur signifie que la ressource demandée ne peut être vue par le client. Les raisons peuvent être :
- Des droits insuffisants au niveau des fichiers : l'utilisateur sous lequel tourne Apache ne possède pas les droits pour accéder à la ressource (sous Linux/Unix les répertoires doivent disposer du droit d'exécution et de lecture sur les fichiers pour cet utilisateur).
- Absence d'un fichier d'index de répertoire (voir la valeur de la directive DirectoryIndex) et l'option de listing de répertoire n'est pas en vigueur (Options (+)Indexes).
- Une règle de type Deny interdit votre machine sur cette partie du serveur.
- Apache n'est pas autorisé à suivre les liens symboliques (Options FollowSymLinks voir SymLinksIfOwnerMatch requise).
L'erreur Internal Server Error est souvent liée à l'utilisation des fichiers htaccess, à l'exécution de programmes dits CGI et parfois une requête invalide de la part du client.
Dans le premier des cas, vérifiez que vous n'utilisez pas de directives erronées, indisponibles ou interdites dans votre fichier htaccess par rapport à la configuration générale du serveur.
Ces erreurs trouvent souvent leur explication dans les journaux du serveur. N'hésitez pas à le consultez si vous y avez accès !
Ceci n'est en réalité qu'un simple warning signalant l'absence d'une directive ServerName globale, Apache tentant alors d'en déterminer une.
Explicitez en une si vous ne souhaitez plus voir ce message.
Cette erreur se présente sur toute distribution Debian ou dérivée, étant donné sa configuration initiale préférant définir le virtualhost par défaut.
Plusieurs options sont possibles :
-
Identifier et mettre fin au processus responsable de cette
occupation. Reconfigurer éventuellement l'application fautive si
elle le permet.
Dans le cas de Skype, par exemple, aller dans le menu Outils puis Options, onglet Avancées, sélectionner Connexion dans le sous-menu. Reconfigurer les ports employés puis relancer le logiciel. - Changer le port d'écoute d'Apache pour éviter tout conflit.
Plusieurs raisons peuvent expliquer un dysfonctionnement à ce niveau, dépendant des symptômes qui se présentent :
-
La boîte de dialogue demandant habituellement à l'utilisateur ses login et mot de passe ne s'affiche pas : il faut contrôler que vous avez la permission de définir des directives liées à l'authentification dans un fichier .htaccess sur ce répertoire. C'est à dire, que la valeur de la directive AllowOverride soit au moins à AuthConfig pour le répertoire (<Directory>) en question (voir un parent duquel il y aurait héritage) dans le fichier de configuration d'Apache.
-
Obtention d'une erreur 500 (Apache 2 uniquement) : il s'agit probablement d'une erreur dans le chemin indiqué à la ligne AuthUserFile.
-
Mes identifiants me sont sans cesse demander car Apache ne semble pas les reconnaître ; plusieurs possibilités :
-
possesseur d'une version 1.3, le fichier .htpasswd est introuvable à l'endroit indiqué (ligne AuthUserFile) ;
-
le login et/ou le mot de passe sont erronés. Par rapport à cela, il est vivement conseillé d'employer l'utilitaire htpasswd, accompagnant Apache, pour créer et maintenir son fichier d'utilisateurs. Il y a, en effet, des subtilités qu'il est bon de prendre en compte :
- la disponibilité de certains algorithmes de chiffrage est propre au système employé. Ainsi crypt n'est pas disponible sous Windows et les systèmes n'offrant aucune restriction à ce niveau n'accepteront pas des mots de passe en clair ;
- l'algorithme de hachage MD5 est propre à Apache. Il a volontairement été modifié dans le but d'en renforcer la sécurité. L'usage de tout autre outil générant de telles empreintes ne fonctionnera pas (PHP notamment).
-
Lien : Pourquoi mon fichier .htaccess n'est pas pris en compte ?
Il s'agit d'un bug lié au système de fichiers NTFS. Pour y remédier, il faut s'assurer que les directives suivantes sont présentes dans le fichier de configuration d'Apache :
EnableSendfile
Off
EnableMMAP
Off
Win32DisableAcceptEx