FAQ:ServiceUnavailable : Différence entre versions

De WikiFr_dbSQWare
Aller à : navigation, rechercher
m (Vérification du fichier de configuration)
m (Explication)
 
(31 révisions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
==Erreur service Unavailable==
+
==Erreur Service Unavailable==
 +
<br>
 
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<br>
 
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<br>
 +
<br>
 
[[Fichier:ServiceUnavailable.png|admin]]
 
[[Fichier:ServiceUnavailable.png|admin]]
 
<br>
 
<br>
===Explication===
+
==Explications==
 
<br>
 
<br>
Cette section n’a pas la prétention de traiter tous les cas possibles de paramétrage de dbSQWare.<br>
+
Ce problème est apparu depuis quelques versions de php-fpm et semble persister:<br>
Avant de dire « ça ne fonctionne pas », lisez bien le message d’erreur et réfléchissez à ce dont vous avez besoin au niveau du socle pour que les scripts fonctionnent. Par exemple, si vous n’arrivez pas à faire un sqlplus en ligne de commande pour vous connecter à votre instance Oracle, il n’y a pas de raison pour que les scripts arrivent à le faire (il n’y a rien de magique) !<br>
+
* Lors de mise à jour des paquets php-fpm ou du système les droits sur certains dossiers et fichiers retournent à '''root:root'''.<br>
 +
* De plus la configuration présente dans php-fpm et parfois écrasée lors de la mise à jour.<br>
 +
<br>
 +
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.<br>
 
<br>
 
<br>
Depuis quelques patch lors de la mise à jour des paquets php-fpm les droits saisies à l'origine sont ignorés
 
  
donc on ne peut plus ouvrir la page web de dbSQWare et vous avez l'erreur Service Unavailable
+
Cette section n’a pas la prétention de traiter tous les cas possibles liées à cette erreur.<br>
 
+
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.<br>
 
+
<br>
 
+
Vous pouvez vérifier dans les log apache et php-fpm pour voir ce qui pose problème.
Il faut vérifier dans les log apache pour voir ce qui pose problème.
 
 
<pre>
 
<pre>
 
cat /var/log/httpd/error_log
 
cat /var/log/httpd/error_log
 
 
cat /var/log/httpd/access_log
 
cat /var/log/httpd/access_log
 
 
cat /var/log/php-fpm/error.log
 
cat /var/log/php-fpm/error.log
 
 
cat /var/log/php-fpm/www-error.log
 
cat /var/log/php-fpm/www-error.log
 
</pre>
 
</pre>
Dans la majorité des cas vous aurez uen erreur de ce style "Permission denied: AH02454: FCGI: attempt to connect to Unix domain socket /run/php-fpm/www.sock (*) failed"
+
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'''
 
<br>
 
<br>
  
===Résolution===
+
<br>
 +
 
 +
==Résolution "Permission denied"==
 
<br>
 
<br>
 
{{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 ! }}
 
{{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 ! }}
  
Si vous avez une erreur de ce type :
+
===Vérification des droits===
'''Permission denied: AH02454: FCGI: attempt to connect to Unix domain socket /run/php-fpm/www.sock (*) failed'''
 
====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
 
 
 
<pre>
 
vi  /etc/php-fpm.d/www.conf
 
 
 
[..]
 
user = dbsqware
 
group = dba
 
[..]
 
listen.owner = dbsqware
 
listen.group = dba
 
listen.mode = 0660
 
[..]
 
</pre>
 
 
 
=====Redémmarage=====
 
en cas de modification du fichier vous devez redémmarer les services php-form et httpd
 
<pre>
 
 
 
systemctl restart php-fpm
 
 
 
systemctl restart httpd
 
</pre>
 
 
 
====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.
 
Certaines manipulation au niveau du système peuvent changer les proprétaires et, ou les droits de certains dossiers et fichiers.
  
=====/var/log/httpd/*=====
+
====/var/log/httpd/*====
 
<pre>
 
<pre>
 
dbsqware@vmsqwarebox:/home/dbsqware $ ll /var/log
 
dbsqware@vmsqwarebox:/home/dbsqware $ ll /var/log
Ligne 86 : Ligne 60 :
 
</pre>
 
</pre>
  
=====/var/log/php-fpm/*=====
+
====/var/log/php-fpm/*====
 
<pre>
 
<pre>
 
dbsqware@vmsqwarebox:/home/dbsqware $ ll /var/log
 
dbsqware@vmsqwarebox:/home/dbsqware $ ll /var/log
Ligne 108 : Ligne 82 :
 
</pre>
 
</pre>
  
=====/run/php-fpm/*=====
+
====/run/php-fpm/*====
Ce dossier n'existe que si le service php-fpm.service est démarré
+
Ce dossier n'existe que si le service php-fpm est démarré
 
<pre>
 
<pre>
 
dbsqware@vmsqwarebox:/home/dbsqware $ systemctl status php-fpm.service
 
dbsqware@vmsqwarebox:/home/dbsqware $ systemctl status php-fpm.service
Ligne 117 : Ligne 91 :
 
   Main PID: 445169 (php-fpm)
 
   Main PID: 445169 (php-fpm)
 
     Status: "Processes active: 0, idle: 5, Requests: 10, slow: 0, Traffic: 0req/sec"
 
     Status: "Processes active: 0, idle: 5, Requests: 10, slow: 0, Traffic: 0req/sec"
 +
</pre>
 +
On vérifier les droits sur le dossier
 +
<pre>
 +
dbsqware@vmsqwarebox:/home/dbsqware $ ll /run
 +
 +
...
 +
drwxr-xr-x  2 dbsqware      dba              80 May 17 11:35 php-fpm
 +
...
 +
</pre>
 +
On vérifie le contenu du dossier
 +
<pre>
 +
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
 +
</pre>
 +
 +
Si vous avez autre chose faites les commandes suivantes :
 +
<pre>
 +
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
 +
</pre>
 +
 +
{{ note|
 +
Si vous avez seulement modifié les droits des dossiers et fichiers l'application web sera disponible à nouveau sans redémarrage requis}}
 +
 +
===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
 +
 +
<pre>
 +
vi  /etc/php-fpm.d/www.conf
 +
 +
[..]
 +
user = dbsqware
 +
group = dba
 +
[..]
 +
listen.owner = dbsqware
 +
listen.group = dba
 +
listen.mode = 0660
 +
[..]
 +
</pre>
 +
 +
====Redémarrage====
 +
en cas de modification du fichier vous devez redémmarer les services php-form et httpd
 +
<pre>
 +
systemctl restart php-fpm
 +
systemctl restart httpd
 
</pre>
 
</pre>

Version actuelle datée du 17 mai 2024 à 14:54

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

Explications


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.

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


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 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.


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