FAQ:ServiceUnavailable

De WikiFr_dbSQWare
Révision datée du 17 mai 2024 à 15:16 par Ymauger (discussion | contributions) (/run/php-fpm/*)
Aller à : navigation, rechercher

Erreur service Unavailable


Vous pouvez parfois avoir cette erreur lors de votre connexion à l'application web dbsqware en général aprés une mise à jour système ou du paquet php-fpm

admin

Explication


Cette section n’a pas la prétention de traiter tous les cas possibles liées à cette erreur.
Etant donné que l'erreur n'est pas liée à l'outil dbSQWare si vous avez un process qui fonctionne pour vos autres services web fonctionnant avec php-fpm n'hésitez pas à les appliquer également ici.

Vous pouvez vérifier dans les log apache et php-fpm pour voir ce qui pose problème.

cat /var/log/httpd/error_log
cat /var/log/httpd/access_log
cat /var/log/php-fpm/error.log
cat /var/log/php-fpm/www-error.log

Dans la majorité des cas vous aurez une erreur de ce style Permission denied: AH02454: FCGI: attempt to connect to Unix domain socket /run/php-fpm/www.sock (*) failed


Ce problème est apparu depuis quelques versions de php-fpm et semble persister:

  • Lors de mise à jour des paquets php-fpm ou du système les droits sur certains dossiers et fichiers retournent à root:root.
  • De plus la configuration présente dans php-fpm et parfois écrasée lors de la mise à jour.


Le site web dbsqware tourne avec l'utilisateur dbsqware et donc on ne peut plus ouvrir la page web de dbSQWare et vous avez l'erreur Service Unavailable.

Résolution "Permission denied"


Note.png
Note:
la résolution suivante ne s'applicaquera pas forcément à tous les cas de figure mais c'est le mode de résolution le plus courant ! .


Vérification du fichier de configuration

Il peut arriver que suite à la mise à jour du paquet php-fpm les paramètres suivants soient écrasés

vi  /etc/php-fpm.d/www.conf

[..]
user = dbsqware
group = dba
[..]
listen.owner = dbsqware
listen.group = dba
listen.mode = 0660
[..]

Redémarrage

en cas de modification du fichier vous devez redémmarer les services php-form et httpd

systemctl restart php-fpm
systemctl restart httpd

Vérification des droits

Certaines manipulation au niveau du système peuvent changer les proprétaires et, ou les droits de certains dossiers et fichiers.

/var/log/httpd/*

dbsqware@vmsqwarebox:/home/dbsqware $ ll /var/log

...
drwxrwS---   2 dbsqware dba         41 Apr 15 16:02 httpd
...

On vérifie le contenu du dossier

dbsqware@vmsqwarebox:/home/dbsqware $ ll /var/log/httpd

...
-rw-rwSr--   1 dbsqware dba  696482 May 17 13:27 access_log
-rw-rwSr--   1 dbsqware dba   14277 May 13 09:22 error_log
...

Si vous avez autre chose faites les commandes suivantes :

chown -R dbsqware:dba /var/log/httpd
chmod -R g+rw /var/log/httpd
chmod -R g+s /var/log/httpd

/var/log/php-fpm/*

dbsqware@vmsqwarebox:/home/dbsqware $ ll /var/log
...
drwxrws---   2 dbsqware dba         44 Apr 15 16:56 php-fpm
...

On vérifie le contenu du dossier

dbsqware@vmsqwarebox:/home/dbsqware $ ll /var/log/php_fpm
...
-rw-rwS---   1 dbsqware dba   8101 May 17 11:35 error.log
-rw-r--r--   1 dbsqware dba  13760 May 17 13:14 www-error.log
...

Si vous avez autre chose faites les commandes suivantes :

chown -R dbsqware:dba /var/log/php-fpm
chmod -R g+rw /var/log/php-fpm
chmod -R g+s /var/log/php-fpm

/run/php-fpm/*

Ce dossier n'existe que si le service php-fpm est démarré

dbsqware@vmsqwarebox:/home/dbsqware $ systemctl status php-fpm.service
● php-fpm.service - The PHP FastCGI Process Manager
     Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; enabled; preset: disabled)
     Active: active (running) since Fri 2024-05-17 11:35:40 CEST; 3h 10min ago
   Main PID: 445169 (php-fpm)
     Status: "Processes active: 0, idle: 5, Requests: 10, slow: 0, Traffic: 0req/sec"

On vérifier les droits sur le dossier

dbsqware@vmsqwarebox:/home/dbsqware $ ll /run

...
drwxr-xr-x   2 dbsqware       dba              80 May 17 11:35 php-fpm
...

On vérifie le contenu du dossier

dbsqware@vmsqwarebox:/home/dbsqware $ ll /run/php-fpm

...
-rw-r--r--   1 dbsqware dba     6 May 17 11:35 php-fpm.pid
srw-rw----+  1 dbsqware dba     0 May 17 11:35 www.sock

Si vous avez autre chose faites les commandes suivantes :

chown -R dbsqware:dba /run/php-fpm
chown dbsqware:dba /run/php-fpm/* #spécifiquement sur ce dossier le -R ne semble pas toujours s'appliquer
chmod -R g+rw /run/php-fpm
chmod -R g+s /run/php-fpm
Note.png
Note:

Si vous avez seulement modifié les droits des dossiers et fichiers l'application web sera disponible à nouveau sans redémarrage requis.