Aller au contenu principal

httpd — Apache sur RHEL-like

httpd est le même logiciel Apache HTTP Server que apache2, mais sous son nom de service et sa disposition de fichiers propres aux distributions RHEL-like (RHEL, Fedora, CentOS, Rocky, Alma). Cette fiche se limite aux différences ; pour le fonctionnement général d'Apache, voir la fiche apache2.

Installation

sudo dnf install httpd
sudo systemctl enable --now httpd
sudo firewall-cmd --permanent --add-service=http --add-service=https
sudo firewall-cmd --reload

Fichiers de configuration

CheminRôle
/etc/httpd/conf/httpd.confConfiguration principale
/etc/httpd/conf.d/*.confVhosts et configuration additionnelle (chargés automatiquement, pas d'étape a2ensite)
/etc/httpd/conf.modules.d/*.confModules (chargés automatiquement, pas d'étape a2enmod)
/var/log/httpd/access_log / error_logLogs
/var/www/html/DocumentRoot par défaut

Commandes utiles

sudo apachectl configtest
sudo systemctl reload httpd
httpd -M # Modules chargés

Différences clés avec Debian/apache2

  • Pas de a2ensite/a2enmod : tout fichier .conf dans conf.d/ est chargé automatiquement — activer/désactiver = ajouter/renommer le fichier.
  • SELinux est actif par défaut sur RHEL-like : un DocumentRoot hors de /var/www nécessite un contexte adapté (semanage fcontext, restorecon) sinon Apache reçoit un 403 Forbidden malgré des permissions Unix correctes.
  • firewalld (pas ufw) contrôle l'accès réseau — penser à ouvrir les services http/https.

Sécurisation

  • Vérifier le contexte SELinux du DocumentRoot : ls -Z /var/www/html, sudo semanage fcontext -a -t httpd_sys_content_t "/data/web(/.*)?" puis restorecon -Rv /data/web.
  • Si le site doit se connecter à un service réseau (ex: reverse proxy vers une app distante), activer le booléen SELinux dédié : setsebool -P httpd_can_network_connect on.
  • Mêmes bonnes pratiques que apache2 : ServerTokens Prod, modules minimaux, TLS moderne.

Logs & dépannage

tail -f /var/log/httpd/error_log
journalctl -u httpd -f
sudo ausearch -m avc -ts recent # Si SELinux bloque silencieusement une action (403 inattendu)

Voir aussi

  • apache2 — le cœur du fonctionnement Apache, commun aux deux distributions
  • selinux — contexte indispensable pour comprendre les blocages httpd_*