lequel de ces deux fichiers dois-je utiliser pour configurer Apache?
Le httpd.conf
est vide, tandis que Apache2.conf
n'est pas.
Ça me perturbe!
Httpd.conf est conçu pour les configurations utilisateur. Vous ne devriez vraiment pas modifier le fichier Apache2.conf car il pourrait être mis à jour par de futures mises à niveau.
Une option supplémentaire consiste à simplement mettre votre configuration personnalisée dans /etc/Apache2/conf.d, tous les fichiers de ce répertoire sont également inclus.
Ce ne sont pas vos seules options. Sur Ubuntu/Debian, Apache traite également tous les fichiers dans /etc/Apache2/sites-enabled/
(qui devrait être des liens symboliques vers des fichiers dans sites-available/
répertoire, géré par le a2ensite
et a2dissite
programmes)
Vous êtes censé utiliser ces répertoires pour VirtualHost
s.
Apache2.conf inclut httpd.conf:
a@test$:/etc/Apache2$ cat Apache2.conf | grep httpd.conf
Include /etc/Apache2/httpd.conf
Je pense que httpd.conf est obsolète, mais juste laissé là pour les conservateurs afin qu'ils trouvent leur chemin ... :)
ÉDITER:
Après avoir lu la réponse de Rob, j'ai fait un meilleur grep:
a@test:/etc/Apache2$ grep -C 1 httpd.conf Apache2.conf
# Include all the user configurations:
Include /etc/Apache2/httpd.conf
Configurations utilisateur c'est ...
Apache Software Foundation publie de nombreux logiciels, dont un serveur Web nommé httpd
. Les sources du projet httpd incluent entre autres un httpd.conf
exemple de fichier de configuration, qui est installé par défaut dans /usr/local/etc/httpd
ou /etc/httpd
. Vous trouverez httpd nommé comme tel sur la plupart des systèmes.
Cependant, il y a longtemps et loin, quelqu'un dans la distribution Debian GNU/Linux a décidé de changer le nom du logiciel dans cette distribution de httpd
à 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 ça ou pourquoi, mais c'est une source perpétuelle de confusion 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é. Encore plus étranges, ils incluent alors un fichier /etc/Apache2/httpd.conf
qui est Include
d de Apache2.conf
dans lequel les utilisateurs peuvent placer une configuration personnalisée.
Donc, la réponse est, si vous êtes sur un système basé sur Debian, vous pliez votre cerveau pour faire les choses comme Debian veut que vous le fassiez. Sinon, vous faites généralement les choses normalement comme le fait le projet httpd en amont.
Apache 2.4
Utilisez:
Placez toutes les configurations personnalisées dans /etc/Apache2/conf-available/{name}.conf
Activez/désactivez votre configuration à l'aide de Sudo a2enconf {name}
ou Sudo a2disconf {name}
.
(Ensuite, redémarrez le service Apache2.)
N'utilisez pas:
httpd.conf
est obsolète et vous ne devriez plus le voir - si vous le faites, laissez-le vide tel qu'il est installé.
Apache2.conf
est toujours installé, mais laissez-le tranquille si vous souhaitez mettre à jour Apache proprement/facilement.
-
Tout ce que vous pourriez voir dans une configuration Apache "globale" peut être ajouté/remplacé sous votre configuration personnalisée comme ci-dessus.
ouvrez simplement Apache2.conf et regardez le contenu:
Include /etc/Apache2/mod-enabled/*.conf
Include /etc/Apache2/httpd.conf
Donc, si vous souhaitez inclure votre propre configuration, ajoutez-la à httpd.conf et Apache2.conf l'obtiendra automatiquement.
Comme d'autres disent, Apache2.conf peut être généré par machine et il vaut mieux ne pas le toucher.
Pour plus d'informations, généralement Ubuntu utilise Apache2.conf et Centos utilise httpd.conf. Tous ces fichiers dépendent donc du système d'exploitation dont vous disposez.
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'un d'eux est conservé uniquement pour des raisons de compatibilité descendante) - donc, cela ne devrait pas changer grand-chose.
Pourtant, si vous voulez ajouter quelque chose, comme un nouveau VirtualHost
: n'y a-t-il pas un autre sous-répertoire, dans lequel vous pourriez mettre votre fichier et le faire inclure?
Ce serait probablement une meilleure solution: vous ne modifieriez pas le fichier par défaut - ce qui simplifierait les mises à jour.