Apache2 ne veux plus demarrer

Tags: #<Tag:0x00007f63f33f05f8>
systemd[1]: Starting The Apache HTTP Server...
 apachectl[2204]: AH00548: NameVirtualHost has no effect and will be removed in the next release /etc/apache2/ports.conf:7
 apachectl[2204]: (98)Address already in use: AH00072: make_sock: could not bind to address 127.0.0.1:80
 apachectl[2204]: no listening sockets available, shutting down
 apachectl[2204]: AH00015: Unable to open logs
 apachectl[2201]: Action 'start' failed.
 apachectl[2201]: The Apache error log may have more information.
 systemd[1]: apache2.service: Control process exited, code=exited, status=1/FAILURE
 systemd[1]: apache2.service: Failed with result 'exit-code'.
 systemd[1]: Failed to start The Apache HTTP Server.

Bonjour à tous
Avec la commande : systemctl status apache2.service

mars 24 22:52:55 reseau systemd[1]: Starting The Apache HTTP Server...
mars 24 22:52:55 reseau apachectl[2294]: AH00526: Syntax error on line 5 of /etc/apache2/ports.conf:
mars 24 22:52:55 reseau apachectl[2294]: Invalid address or port
mars 24 22:52:55 reseau systemd[1]: apache2.service: Control process exited, code=exited, status=1/FAILURE
mars 24 22:52:55 reseau apachectl[2291]: Action 'start' failed.
mars 24 22:52:55 reseau apachectl[2291]: The Apache error log may have more information.
mars 24 22:52:55 reseau systemd[1]: apache2.service: Failed with result 'exit-code'.
mars 24 22:52:55 reseau systemd[1]: Failed to start The Apache HTTP Server.
root@reseau:~#

Dans la config fichier PORTS.CONF

# If you just change the port or add more ports here, you will likely also
# have to change the VirtualHost statement in
# /etc/apache2/sites-enabled/000-default.conf
ServerName monpostereseaux
Listen :80
#avant Listen 80
NameVirtualHost *:800

<IfModule ssl_module>
        Listen 443
</IfModule>

<IfModule mod_gnutls.c>
        Listen 443
</IfModule>

Avec la commande journalctl -xe

 L'unité (unit) apache2.service a commencé à démarrer.
mars 25 06:03:50 reseau apachectl[3570]: AH00526: Syntax error on line 5 of /etc/apache2/ports.conf:
mars 25 06:03:50 reseau apachectl[3570]: Invalid address or port
mars 25 06:03:50 reseau apachectl[3567]: Action 'start' failed.
mars 25 06:03:50 reseau apachectl[3567]: The Apache error log may have more information.
mars 25 06:03:50 reseau systemd[1]: apache2.service: Control process exited, code=exited, status=1/FAILURE
 Subject: Unit process exited
 Defined-By: systemd
 Support: https://www.debian.org/support

 An ExecStart= process belonging to unit apache2.service has exited.

 The process' exit code is 'exited' and its exit status is 1.
mars 25 06:03:50 reseau systemd[1]: apache2.service: Failed with result 'exit-code'.
 Subject: Unit failed
 Defined-By: systemd
 Support: https://www.debian.org/support

 The unit apache2.service has entered the 'failed' state with result 'exit-code'.
mars 25 06:03:50 reseau systemd[1]: Failed to start The Apache HTTP Server.
 Subject: L'unité (unit) apache2.service a échoué
 Defined-By: systemd
 Support: https://www.debian.org/support

 L'unité (unit) apache2.service a échoué, avec le résultat failed.

Re-bonjour à tous, le problème qu’il à eu avant que tout ne fonctionne plus jusqu’a samba, et mon site internet, je voulais faire un compte mail avec POSFIX
je me souviens avoir rentrer une commande comme sa :
chown -R www-data:www-data /var/www/postfix
Si sa peut aider
Merci de votre aide

Bonjour mon serveur apache2 ne démarre plus code erreur :

 systemd[1]: Starting The Apache HTTP Server...
 apachectl[2204]: AH00548: NameVirtualHost has no effect and will be removed in the next release /etc/apache2/ports.conf:7
 apachectl[2204]: (98)Address already in use: AH00072: make_sock: could not bind to address 127.0.0.1:80
 apachectl[2204]: no listening sockets available, shutting down
 apachectl[2204]: AH00015: Unable to open logs
 apachectl[2201]: Action 'start' failed.
 apachectl[2201]: The Apache error log may have more information.
 systemd[1]: apache2.service: Control process exited, code=exited, status=1/FAILURE
 systemd[1]: apache2.service: Failed with result 'exit-code'.
 systemd[1]: Failed to start The Apache HTTP Server.

Avez vous une solution merci

Dans le ficher port.conf

# If you just change the port or add more ports here, you will likely also
# have to change the VirtualHost statement in
# /etc/apache2/sites-enabled/default.conf

Listen 80

NameVirtualHost *:800

<IfModule ssl_module>
        Listen 443
</IfModule>

<IfModule mod_gnutls.c>
        Listen 443
</IfModule>

Bonjour,

Tes messages montrent que le serveur Apache refuse de démarrer à cause d’une erreur de syntaxe dans le fichier /etc/apache2/ports.conf.

On y voit effectivement au moins quatre erreurs :

  • la directive ServerName qui n’a rien à faire dans ce fichier ;
  • les directives Listen dont la syntaxe est erronée ;
  • l’utilisation de NameVirtualHost qui est obsolète ;
  • Listen 443 Listen 443 qui est répété.

Commence par remettre ce fichier dans son état d’origine et redémarre le service Apache.

2 J'aime

Bonjour,

Je viens de fusionner tes deux sujets et j’ai corrigé les mises en forme.
J’ai également fusionné tous tes messages.

Pour ton problème, la cause me semble être claire :

Tu dois avoir une autre instance d’apache (ou un autre programme) qui écoute déjà sur le port 80.
Tu peux utiliser ss, netstat ou lsof (selon ce dont tu as l’habitude) pour savoir quel programme utilise déjà le port.
Si tu ne vois aucun programme qui écoute sur le port 80, c’est probablement que ton problème vient d’un programme fermé un peu violemment qui n’a pas mis fin correctement au connecteur d’écoute.

Il me semble bien que sa doit être POSTFIX car j’ai essayer un tuto, je pense avoir fait des manipulation pour le faire fonctionner sans succès.
Es ce que vous savez comment remettre tout sa en ordre SVP
Je vais essayer de retrouver le tuto car il n’a jamais rien de complet et je bascule sur l’un à l’autre pour compléter mes je vois que ça ne rapporte rien de bon.

pour ce qu’il concerne le fichier PORT.CONF
Normalement comme ceci tout fonctionner avant mes bon est ce que j’ai pas fait une mise à jour.
Pour vous es ce que c’est bon ?

Listen 80

NameVirtualHost *:800

<IfModule ssl_module>
        Listen 443
</IfModule>

<IfModule mod_gnutls.c>
        Listen 443
</IfModule>

Les points c’est les guillemet enlevé car sa passe pas sur le site

Il faut enlever cette ligne :

NameVirtualHost *:800

et nous expliquer ce qu’elle était censée faire.

Je viens de regarder dans l’historique des manipulations faite sur le serveur.
Donc dernièrement j’ai eu un problème ne pouvant plus mettre un certificat de sécurité donc il y a eu ses commande la de fait :
apt install certbot python3-certbot-nginx

iptables -I INPUT -p tcp -m tcp --dport 80 -j ACCEPT
iptables -I INPUT -p tcp -m tcp --dport 443 -j ACCEPT

Ensuite j’ai réussi à avoir un certificat de sécurité pendant 3 mois.

Donc quelques jours après j’ai voulu continuer pour avoir un serveur mail POSTFIX
et j’ai rentré ses commandes là :

chown -R www-data:www-data /var/www/html/postfixadmin
chown -R www-data:www-data /var/www/html/tchat/postfixadmin

Comme ça ne donner rien. J’ai tout laisser en plan. Y a quelques jours, j’ai eu une coupure de courant et je me suis aperçu que mon serveur web et samba été indisponible.

Donc voilà. Je voudrai bien réparer avec votre aide.
Je fait la modification dans le fichier port.conf
Je vous dit quoi dans quelques instant
Merci bien

Je me suis permis de corriger ton message, tu peux éditer afin de voir comment j’ai fais :wink:

Pour ce qui est de ta conf il faut effectivement virer la partie virtualhost qui n’a rien à faire ici.

Tu as l’url ?

Listen 80

#NameVirtualHost *:800

 <IfModule ssl_module>
            Listen 443
</IfModule>

<IfModule mod_gnutls.c>
        Listen 443
</IfModule>

J’ai modifié le fichier PORT.CONF et redémarrer le serveur en entier toujours le même problème.
Pour le moment toujours pas trouver le tuto, j’en au tellement vu.

Les commandes faite qui doivent poser problème, je pense que sa doit être sa :

iptables -I INPUT -p tcp -m tcp --dport 80 -j ACCEPT
iptables -I INPUT -p tcp -m tcp --dport 443 -j ACCEPT
chown -R www-data:www-data /var/www/html/postfixadmin
chown -R www-data:www-data /var/www/html/tchat/postfixadmin

La pour le moment on va essayer de tout faire pour remettre le serveur web en route pour POSFIX dans le pire des cas comme il ne fonctionne pas on peut tout virer si sa peut aider !

le journal journalctl -xe donne :

mars 25 13:20:38 reseau apachectl[1381]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName'>
mars 25 13:20:38 reseau apachectl[1381]: (98)Address already in use: AH00072: make_sock: could not bind to address [::]:80
mars 25 13:20:38 reseau apachectl[1381]: (98)Address already in use: AH00072: make_sock: could not bind to address 0.0.0.0:80
mars 25 13:20:38 reseau apachectl[1381]: no listening sockets available, shutting down
mars 25 13:20:38 reseau apachectl[1381]: AH00015: Unable to open logs
mars 25 13:20:38 reseau apachectl[1378]: Action 'start' failed.
mars 25 13:20:38 reseau apachectl[1378]: The Apache error log may have more information.
mars 25 13:20:38 reseau systemd[1]: apache2.service: Control process exited, code=exited, status=1/FAILURE
 Subject: Unit process exited
 Defined-By: systemd
 Support: https://www.debian.org/support

 An ExecStart= process belonging to unit apache2.service has exited.

 The process' exit code is 'exited' and its exit status is 1.
mars 25 13:20:38 reseau systemd[1]: apache2.service: Failed with result 'exit-code'.
 Subject: Unit failed
 Defined-By: systemd
 Support: https://www.debian.org/support

 The unit apache2.service has entered the 'failed' state with result 'exit-code'.
mars 25 13:20:38 reseau systemd[1]: Failed to start The Apache HTTP Server.
 Subject: L'unité (unit) apache2.service a échoué
 Defined-By: systemd
 Support: https://www.debian.org/support

 L'unité (unit) apache2.service a échoué, avec le résultat failed.
mars 25 13:26:18 reseau systemd[1]: Starting Cleanup of Temporary Directories...
 Subject: L'unité (unit) systemd-tmpfiles-clean.service a commencé à démarrer
 Defined-By: systemd
 Support: https://www.debian.org/support

 L'unité (unit) systemd-tmpfiles-clean.service a commencé à démarrer.
mars 25 13:26:18 reseau systemd[1]: systemd-tmpfiles-clean.service: Succeeded.
 Subject: Unit succeeded
 Defined-By: systemd
 Support: https://www.debian.org/support

 The unit systemd-tmpfiles-clean.service has successfully entered the 'dead' state.
mars 25 13:26:18 reseau systemd[1]: Finished Cleanup of Temporary Directories.
 Subject: L'unité (unit) systemd-tmpfiles-clean.service a terminé son démarrage
 Defined-By: systemd
 Support: https://www.debian.org/support

 L'unité (unit) systemd-tmpfiles-clean.service a terminé son démarrage, avec le résultat done.

Comme déjà indiqué plus haut cette erreur :

Address already in use: AH00072: make_sock: could not bind to address [::]:80

indique qu’un autre processus est déjà en écoute sur le port 80. Apache ne peut donc pas démarrer.

Pour voir tous les processus en écoute sur un socket TCP (serveurs ), utilise en root :

ss -tnlp
users:(("couriertcpd",pid=692,fd=3))
LISTEN    0         511                0.0.0.0:80               0.0.0.0:*

Voilà ce que ça me donne : couriertcpd.
Sa correspond au « programmes » installé avec POSTFIX.

Et pourquoi courriertcpd est en écoute sur le port 80 ? Si c’est un service de courrier il devrait être en écoute sur des ports SMTP, IMAP, POP, etc. mais sûrement pas 80
Et pourquoi ne voit-on que ce résultat dans le retour de la commande demandée ? Il n’y a pas d’autre services en écoute ?

Il me semble que ton système est dans un état assez anarchique, que tu ne comprends pas vraiment ce que tu fais et que tu fournis des informations parcellaires. Dans ces conditions cela va être très difficile de te dépanner.

Il te faut dans ce cas stoper ce qui monoplise le port 80, disable l’unit systemd de couriertcpd

Ensuite dans ton port.conf tu ne mets que ça :

Listen 80

 <IfModule ssl_module>
            Listen 443
</IfModule>

<IfModule mod_gnutls.c>
        Listen 443
</IfModule>

Après faut impérativement que tu te documente pour mieux comprendre ce que tu fais …

Attendez, il y a un décalage là, il me semble que ss met le nom du programme après les informations du port et sur la même ligne, pas avant sur la ligne d’au dessus.
Mets plutôt les lignes aux alentours, je pense que c’est autre chose…

1 J'aime
LISTEN    0         100                0.0.0.0:110              0.0.0.0:*                                                     users:(("dovecot",pid=594,fd=24))
LISTEN    0         4096          192.168.1.76:143              0.0.0.0:*                                                     users:(("couriertcpd",pid=692,fd=3))
LISTEN    0         511                0.0.0.0:80               0.0.0.0:*                                                     users:(("nginx",pid=755,fd=6),("nginx",pid=754,fd=6),("nginx",pid=753,fd=6))
LISTEN    0         128                  [::1]:631                 [::]:*                                                     users:(("cupsd",pid=592,fd=6))

Voici la liste plus détaillé.
Désolé de ne pas vous avoir répondu avant.

Donc si je vois bien c’est l’avant dernière ligne et ce serai ‹ nginx › sur le port 80 !!!

Tu ne peux pas avoir deux serveurs web: nginx et apache, qui écoutent en m^me temps sur les mêmes ports !
Il faut changer mes ports d’écoute de l’un ou de l’autre. Par exemple mettre Apache en écoute sur les ports 8080 et 8443 en modifiant /eyc/apache2/ports.conf :

Listen 8080

 <IfModule ssl_module>
            Listen 8443
</IfModule>

<IfModule mod_gnutls.c>
        Listen 8443
</IfModule>

Mon problème est résolu.
J’ai tout simplement remis mon pare-feu en route et tout à refonctionner.
peut être aussi en modifiant le fichier port.conf grâce à vos conseils.
plus haut dans les messages on me parle de documentation !
Où puis-je trouver une documentation sur la messagerie serveur POSTFIX ?
Car les tutos sont bien souvent incomplet et provoque le chaos sur le serveur surtout quand on fait une confiance aveugle quand on à que très peut de compétence en la matière.