web-dev-qa-db-fra.com

apache2.service: processus de contrôle sorti, code = statut excité = 139

J'installe Apache2 sur Ubuntu 18.04. C'est une installation fraîche avec toutes les configurations par défaut.

J'ai essayé de démarrer Apache2 mais j'ai échoué. Et c'est ce que je vois.

# systemctl status Apache2.service 
● Apache2.service - The Apache HTTP Server
   Loaded: loaded (/lib/systemd/system/Apache2.service; enabled; vendor preset: enabled)
  Drop-In: /lib/systemd/system/Apache2.service.d
           └─Apache2-systemd.conf
   Active: failed (Result: exit-code) since Wed 2020-03-11 23:17:35 WIB; 13s ago
  Process: 9151 ExecStart=/usr/sbin/apachectl start (code=exited, status=139)

Mar 11 23:17:35 xdn.id systemd[1]: Starting The Apache HTTP Server...
Mar 11 23:17:35 xdn.id apachectl[9151]: Segmentation fault
Mar 11 23:17:35 xdn.id apachectl[9151]: Action 'start' failed.
Mar 11 23:17:35 xdn.id apachectl[9151]: The Apache error log may have more information.
Mar 11 23:17:35 xdn.id systemd[1]: Apache2.service: Control process exited, code=exited status=139
Mar 11 23:17:35 xdn.id systemd[1]: Apache2.service: Failed with result 'exit-code'.
Mar 11 23:17:35 xdn.id systemd[1]: Failed to start The Apache HTTP Server.

Lorsque je vérifie /var/log/apache2/error.log, il est vide.

Quel est le problème avec cette erreur?

4
xdnroot

L'erreur "Statut = 139" doit avoir quelque chose à voir avec une version multiple et conflictuelle de PHP activé.

Je suis en cours d'exécution 18.04 et un ancien PHP Site I Exécutez uniquement localement au travail. Je suppose que Aptitude installée et activée PHP7.2, éventuellement lorsque j'ai installé Kubuntu-Desktop quelques semaines.

Quoi qu'il en soit, j'avais deux versions de PHP être activé:

 $ cd /etc/Apache2/
 $ l mods-*/php*
-rw-r--r-- 1 root root 867 Jun  9  2017 mods-available/php5.6.conf
-rw-r--r-- 1 root root 102 Jun  9  2017 mods-available/php5.6.load
-rw-r--r-- 1 root root 867 Mar  2  2017 mods-available/php7.0.conf
-rw-r--r-- 1 root root 102 Oct  1  2018 mods-available/php7.0.load
-rw-r--r-- 1 root root 855 Jul  7  2017 mods-available/php7.1.conf
-rw-r--r-- 1 root root 102 Jul  7  2017 mods-available/php7.1.load
-rw-r--r-- 1 root root 855 Feb  8  2019 mods-available/php7.2.conf
-rw-r--r-- 1 root root 102 Feb  8  2019 mods-available/php7.2.load
lrwxrwxrwx 1 root root  29 Jul  1  2017 mods-enabled/php5.6.conf -> ../mods-available/php5.6.conf
lrwxrwxrwx 1 root root  29 Jul  1  2017 mods-enabled/php5.6.load -> ../mods-available/php5.6.load
lrwxrwxrwx 1 root root  29 May 28 06:05 mods-enabled/php7.2.conf -> ../mods-available/php7.2.conf
lrwxrwxrwx 1 root root  29 May 28 06:05 mods-enabled/php7.2.load -> ../mods-available/php7.2.load

Dans mon cas, Je vais bien avec l'utilisation de PHP5.6, car le site n'est pas en ligne et est purement pour mon usage local uniquement. Donc, la désactivation 7.2 a fait l'affaire:

Sudo a2dismod php7.2

Maintenant, mon PHP Mods-activé est moins déroutant pour Apache3:

 $ l mods-*/php*
-rw-r--r-- 1 root root 867 Jun  9  2017 mods-available/php5.6.conf
-rw-r--r-- 1 root root 102 Jun  9  2017 mods-available/php5.6.load
-rw-r--r-- 1 root root 867 Mar  2  2017 mods-available/php7.0.conf
-rw-r--r-- 1 root root 102 Oct  1  2018 mods-available/php7.0.load
-rw-r--r-- 1 root root 855 Jul  7  2017 mods-available/php7.1.conf
-rw-r--r-- 1 root root 102 Jul  7  2017 mods-available/php7.1.load
-rw-r--r-- 1 root root 855 Feb  8  2019 mods-available/php7.2.conf
-rw-r--r-- 1 root root 102 Feb  8  2019 mods-available/php7.2.load
lrwxrwxrwx 1 root root  29 Jul  1  2017 mods-enabled/php5.6.conf -> ../mods-available/php5.6.conf
lrwxrwxrwx 1 root root  29 Jul  1  2017 mods-enabled/php5.6.load -> ../mods-available/php5.6.load

Naturellement Pour un site en direct, on voudrait désactiver PHP-5.6 et laisser le PHP7.2 activé, car vous devriez exécuter la version plus récente dans la vie réelle.

Sudo a2dismod php5.6
Sudo a2enmod php7.2

Ensuite, les mods PHP devraient ressembler à ceci:

 $ l mods-*/php*
-rw-r--r-- 1 root root 867 Jun  9  2017 mods-available/php5.6.conf
-rw-r--r-- 1 root root 102 Jun  9  2017 mods-available/php5.6.load
-rw-r--r-- 1 root root 867 Mar  2  2017 mods-available/php7.0.conf
-rw-r--r-- 1 root root 102 Oct  1  2018 mods-available/php7.0.load
-rw-r--r-- 1 root root 855 Jul  7  2017 mods-available/php7.1.conf
-rw-r--r-- 1 root root 102 Jul  7  2017 mods-available/php7.1.load
-rw-r--r-- 1 root root 855 Feb  8  2019 mods-available/php7.2.conf
-rw-r--r-- 1 root root 102 Feb  8  2019 mods-available/php7.2.load
lrwxrwxrwx 1 root root  29 May 29 17:43 mods-enabled/php7.2.conf -> ../mods-available/php7.2.conf                                                                         
lrwxrwxrwx 1 root root  29 May 29 17:43 mods-enabled/php7.2.load -> ../mods-available/php7.2.load                                                                         

N'oubliez pas de restater le serveur!

systemctl restart Apache2

Grâce au commentaire de Pavel pour inspirer cette ligne de recherche!

7
Tom W. Hartung