Apache ne démarre pas, pas de message d'erreur httpd

5

J'essaie de démarrer le service httpd sur RHEL 7.

Quand je cours systemctl start httpd, ça échoue.

Voici la sortie de journalctl -xe. Il n'y a pas de message d'erreur apparent pour httpd, les erreurs pour polkitd affectent-elles Apache? Comment pourrais-je résoudre ces problèmes?

Jun 10 10:59:50 localhost.localdomain polkitd[850]: Registered Authentication Agent for unix-process:4462:116143 (system bus name :1.57 [/usr/bin/pkttyagent --notify-fd 5 --fallback], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8)
Jun 10 10:59:50 localhost.localdomain systemd[1]: Starting The Apache HTTP Server...
-- Subject: Unit httpd.service has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit httpd.service has begun starting up. 
Jun 10 10:59:50 localhost.localdomain systemd[1]: httpd.service: main process exited, code=exited, status=1/FAILURE
Jun 10 10:59:50 localhost.localdomain kill[4468]: kill: cannot find process ""
Jun 10 10:59:50 localhost.localdomain systemd[1]: httpd.service: control process exited, code=exited status=1
Jun 10 10:59:50 localhost.localdomain systemd[1]: Failed to start The Apache HTTP Server.
-- Subject: Unit httpd.service has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit httpd.service has failed.
--
-- The result is failed.
Jun 10 10:59:50 localhost.localdomain systemd[1]: Unit httpd.service entered failed state.
Jun 10 10:59:50 localhost.localdomain systemd[1]: httpd.service failed.
Jun 10 10:59:50 localhost.localdomain polkitd[850]: Unregistered Authentication Agent for unix-process:4462:116143 (system bus name :1.57, object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8) (disconnected from bus)

EDIT: journal de sortie et informations supplémentaires

Voici la sortie de tail -f 10 /var/log/httpd/error_log. Les fichiers journaux sont stockés sur un répertoire monté NFS (hébergé à distance). Je peux éditer les fichiers de la machine exécutant Apache, mais Apache lui-même ne semble pas être capable de leur écrire.

==> /var/log/httpd/error_log <==
(13)Permission denied: AH00091: httpd: could not open error log file /data/web/logs/new-error.log.
AH00015: Unable to open logs
(13)Permission denied: AH00091: httpd: could not open error log file /data/web/logs/new-error.log.
AH00015: Unable to open logs
(13)Permission denied: AH00091: httpd: could not open error log file /data/web/logs/new-error.log.
AH00015: Unable to open logs
(13)Permission denied: AH00091: httpd: could not open error log file /data/web/logs/new-error.log.
AH00015: Unable to open logs
(13)Permission denied: AH00091: httpd: could not open error log file /data/web/logs/io-new-error.log.
AH00015: Unable to open logs

EDIT 2: Journaux supplémentaires

[root@localhost web]# sealert -a /var/log/audit/audit.log
 78% donetype=AVC msg=audit(1465576122.933:606): avc:  denied  { write } for  pid=4384 comm="httpd" name="logs" dev="0:38" ino=1060076 scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:nfs_t:s0 tclass=dir

**** Invalid AVC allowed in current policy ***

type=AVC msg=audit(1465576695.541:615): avc:  denied  { read } for  pid=4489 comm="httpd" name="sims" dev="0:38" ino=1060159 scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:nfs_t:s0 tclass=lnk_file

**** Invalid AVC allowed in current policy ***

 78% donetype=AVC msg=audit(1465576695.580:616): avc:  denied  { read } for  pid=4489 comm="httpd" name="sims" dev="0:38" ino=1060159 scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:nfs_t:s0 tclass=lnk_file

**** Invalid AVC allowed in current policy ***

type=AVC msg=audit(1465576695.581:617): avc:  denied  { write } for  pid=4489 comm="httpd" name="logs" dev="0:38" ino=1060076 scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:nfs_t:s0 tclass=dir

**** Invalid AVC allowed in current policy ***

100% done
found 0 alerts in /var/log/audit/audit.log
Matt Pennington
la source
Qu'est-ce que tu as changé httpd.conf? Montrez-moi la sortie detail -f 10 /var/log/httpd/error_log
jeu de mots
J'ai ajouté la sortie du journal ci-dessus. Il semble qu'il y ait un problème d'écriture dans les fichiers journaux. Je n'ai apporté aucune modification directement à httpd.conf
Matt Pennington

Réponses:

3

Si votre système RHEL 7 SELinux faire observer , vous devez activer les valeurs booléennes SELinux pour faire fonctionner NFS. Pour vérifier si votre système utilise SELinux:

# getenforce

Si les déclarations ci-dessus sont appliquées , veuillez continuer:

# getsebool -a | grep httpd_use_nfs

Si cela est renvoyé httpd_use_nfs --> off, exécutez la commande suivante pour autoriser définitivement Apache à utiliser NFS.

# setsebool -P httpd_use_nfs on

Apache devrait être autorisé à écrire dans ces fichiers journaux d’erreurs maintenant.

Jeffrey Wen
la source
Merci Jeffrey. J'ai réglé httpd_use_nfssur on, mais je reçois toujours l'erreur Permission denied: AH00091: httpd: could not open error log file. Les fichiers doivent-ils avoir un niveau d'autorisation ou un propriétaire particulier?
Matt Pennington
Confirmons ce que l' utilisateur et le groupe Apache fonctionne: httpd -S | grep 'User\|Group'. Par exemple, supposons que vous obteniez User: name="apache"et que Group: name="apache"votre répertoire NFS /data/web/logssoit alors monté avec l'utilisateur et le groupe en tant queapache:apache
Jeffrey Wen
Le user:groupest en effet apache:apache. J'ai chown'd le /data/web/logsrépertoire apache:apache, mais je reçois toujours les mêmes erreurs. les fichiers journaux doivent-ils apache:apacheégalement l' être ?
Matt Pennington
Oui, les journaux devraient appartenir à apache:apacheaussi. Vous avez deux options - Option 1: Supprimez les journaux (s'ils sont inutiles) et redémarrez apache; Apache va recréer les journaux automatiquement. Option 2: chown tous les journaux àapache:apache
Jeffrey Wen
J'ai essayé l'option 1 et l'option 2 sans succès. Avec l'option 1, j'ai les mêmes erreurs et les fichiers de log ne sont pas recréés
Matt Pennington