Lequel de ces deux fichiers dois-je utiliser pour configurer Apache ?
En httpd.conf
est vide, tandis que apache2.conf
ne l'est pas.
Je ne sais plus où j'en suis !
Lequel de ces deux fichiers dois-je utiliser pour configurer Apache ?
En httpd.conf
est vide, tandis que apache2.conf
ne l'est pas.
Je ne sais plus où j'en suis !
La fondation Apache Software Foundation publie de nombreux logiciels, dont un serveur web nommé httpd
. Les sources du projet httpd comprennent, entre autres, un fichier httpd.conf
qui est installé par défaut dans le fichier de configuration de l'application /usr/local/etc/httpd
o /etc/httpd
. Vous trouverez httpd nommé ainsi sur la plupart des systèmes.
Cependant, il y a bien longtemps, quelqu'un de la distribution Debian GNU/Linux a décidé de changer le nom du logiciel au sein de cette distribution de httpd
a apache2
. Ainsi, sur un système Debian, vous trouverez un fichier de configuration nommé apache2.conf
dans un répertoire nommé /etc/apache2
. Je ne sais pas qui a fait cela ni pourquoi, mais c'est une source de confusion permanente, au même titre que d'appeler Windows "Microsoft" ou ESXi "VMware". Les distributions basées sur Debian, comme Ubuntu, héritent de cette étrangeté. Ce qui est encore plus étrange, c'est qu'elles incluent un fichier /etc/apache2/httpd.conf
qui est Include
d de apache2.conf
dans lequel les utilisateurs peuvent placer une configuration personnalisée.
La réponse est donc que si vous êtes sur un système basé sur Debian, vous pliez votre cerveau pour qu'il fasse les choses de la manière dont Debian veut que vous les fassiez. Sinon, vous faites généralement les choses de la manière normale, comme le fait le projet httpd en amont.
Apache 2.4 (sous Debian/Ubuntu)
Pour Configuration/Overrides (pas nécessairement un nouveau site) :
Placez un nouveau fichier de configuration dans /etc/apache2/conf-available/{name}.conf
.
Activez/désactivez votre nouvelle configuration en utilisant sudo a2enconf {name}
または sudo a2disconf {name}
.
Les directives qui y figurent peuvent également remplacer les directives httpd.conf
o apache2.conf
car tout fichier de configuration supplémentaire ajouté par l'utilisateur est lu en dernier après la configuration principale.
Redémarrage apache2
pour tenir compte de cette modification.
Pour les sites (et toute configuration spécifique à un site) :
Placez un nouveau fichier de site dans /etc/apache2/sites-available/{name}.conf
Activez/désactivez la configuration de votre site en utilisant sudo a2ensite {name}
または sudo a2dissite {name}
.
Redémarrage apache2
pour tenir compte de cette modification.
Ne pas utiliser :
httpd.conf
est encore installé en tant que fichier de configuration principal dans certaines distributions Linux. Sur d'autres, vous ne devriez plus le voir - si c'est le cas, laissez-le vide en tant qu'installé si vous souhaitez mettre à jour Apache proprement/facilement via le gestionnaire de paquets.
apache2.conf
est encore installée sur de nombreux systèmes et est utilisée comme fichier de configuration principal pour Debian/Ubuntu. Mais laissez-le tranquille si vous souhaitez mettre à jour Apache proprement et facilement. Vous devriez voir quelques include
vers le bas de ce fichier pour les sites et les configurations personnalisées.
Utilisez-les à la place !
L'un de ces fichiers, ou les deux, peuvent être installés via votre gestionnaire de paquets Linux, en fonction de la distribution Linux. C'est une bonne raison de ne pas y toucher car ils pourraient être accidentellement écrasés lors d'une future mise à jour du système.
Tout ce que vous pourriez voir dans "global" Fichiers de configuration d'Apache2 peut être ajouté/supprimé dans votre configuration personnalisée comme indiqué ci-dessus. Vous pouvez également utiliser inclure se déclarer pour mieux se personnaliser. Exemple : Vous pouvez inclure des directives SSL supplémentaires sur certains sites ou sur tous les sites d'un site personnalisé spécifique. include
fichier. Il vous suffit d'ajouter cette déclaration d'inclusion à toutes les configurations de votre site virtuel si nécessaire.
Plus (Debian/Ubuntu) : https://stackoverflow.com/a/11687212/503621
Si apache2.conf
n'est pas vide, et httpd.conf
est vide, vous devriez probablement utiliser apache2.conf
;-)
Mais je suppose que l'un inclut l'autre (et que l'une d'entre elles est conservée uniquement pour des raisons de compatibilité ascendante) -- donc, cela ne devrait pas changer grand-chose.
Néanmoins, si vous souhaitez ajouter quelque chose, comme un nouveau VirtualHost
Le fichier n'est pas inclus dans un autre sous-répertoire : n'existe-t-il pas un autre sous-répertoire, dans lequel vous pourriez placer votre fichier, et l'inclure ?
Ce serait probablement une meilleure solution : vous ne modifieriez pas le fichier par défaut -- ce qui simplifierait les mises à jour.
SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.