FAQ:ServiceUnavailable : Différence entre versions

De WikiFr_dbSQWare
Aller à : navigation, rechercher
m
m (Explication)
 
(67 révisions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
==Généralités==
+
==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>
 +
<br>
 +
[[Fichier:ServiceUnavailable.png|admin]]
 +
<br>
 +
==Explications==
 +
<br>
 +
Ce problème est apparu depuis quelques versions de php-fpm et semble persister:<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>
{{Warning | Avant toutes choses, n'allez pas plus loin si vous n'avez pas lu la section [[DbSQWare:Concepts|"Concepts dbSQWare"]] !}}
 
  
===Limites de cette section===
+
Cette section n’a pas la prétention de traiter tous les cas possibles liées à cette erreur.<br>
Cette section n’a pas la prétention de traiter tous les cas possibles de paramétrage de dbSQWare.<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>
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>
+
<br>
 +
Vous pouvez vérifier dans les log apache et php-fpm pour voir ce qui pose problème.
 +
<pre>
 +
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
 +
</pre>
 +
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>
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
+
<br>
  
[[Fichier:ServiceUnavailable.png|admin]]
+
==Résolution "Permission denied"==
 +
<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 ! }}
 +
 
 +
===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/*====
 +
<pre>
 +
dbsqware@vmsqwarebox:/home/dbsqware $ ll /var/log
 +
 
 +
...
 +
drwxrwS---  2 dbsqware dba        41 Apr 15 16:02 httpd
 +
...
 +
</pre>
 +
On vérifie le contenu du dossier
 +
<pre>
 +
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
 +
...
 +
</pre>
 +
Si vous avez autre chose faites les commandes suivantes :
 +
<pre>
 +
chown -R dbsqware:dba /var/log/httpd
 +
chmod -R g+rw /var/log/httpd
 +
chmod -R g+s /var/log/httpd
 +
</pre>
 +
 
 +
====/var/log/php-fpm/*====
 +
<pre>
 +
dbsqware@vmsqwarebox:/home/dbsqware $ ll /var/log
 +
...
 +
drwxrws---  2 dbsqware dba        44 Apr 15 16:56 php-fpm
 +
...
 +
</pre>
 +
On vérifie le contenu du dossier
 +
<pre>
 +
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
 +
...
 +
</pre>
 +
Si vous avez autre chose faites les commandes suivantes :
 +
<pre>
 +
chown -R dbsqware:dba /var/log/php-fpm
 +
chmod -R g+rw /var/log/php-fpm
 +
chmod -R g+s /var/log/php-fpm
 +
</pre>
 +
 
 +
====/run/php-fpm/*====
 +
Ce dossier n'existe que si le service php-fpm est démarré
 +
<pre>
 +
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"
 +
</pre>
 +
On vérifier les droits sur le dossier
 +
<pre>
 +
dbsqware@vmsqwarebox:/home/dbsqware $ ll /run
  
Il faut vérifier dans les log apache pour voir ce qui pose problème.
+
...
 +
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
  
cat /var/log/httpd/error_log
+
...
 +
-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>
  
cat /var/log/httpd/access_log
+
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>
  
cat /var/log/php-fpm/error.log
+
{{ note|
 +
Si vous avez seulement modifié les droits des dossiers et fichiers l'application web sera disponible à nouveau sans redémarrage requis}}
  
cat /var/log/php-fpm/www-error.log
+
===Vérification du fichier de configuration===
  
Si vous avez une erreur de ce type :
+
Il peut arriver que suite à la mise à jour du paquet php-fpm les paramètres suivants soient écrasés
Permission denied: AH02454: FCGI: attempt to connect to Unix domain socket /run/php-fpm/www.sock (*) failed
 
  
Il faut vérifier /etc/php-fpm.d/www.conf and updated the lines:
+
<pre>
 +
vi /etc/php-fpm.d/www.conf
  
 
[..]
 
[..]
Ligne 36 : Ligne 135 :
 
listen.mode = 0660
 
listen.mode = 0660
 
[..]
 
[..]
 +
</pre>
  
chown -R dbsqware:dba /var/log/php-fpm /var/log/httpd
+
====Redémarrage====
 
+
en cas de modification du fichier vous devez redémmarer les services php-form et httpd
chmod -R g+rw /var/log/php-fpm /var/log/httpd
+
<pre>
 
 
chmod -R g+s /var/log/php-fpm /var/log/httpd
 
 
 
 
 
 
systemctl restart php-fpm
 
systemctl restart php-fpm
 
 
systemctl restart httpd
 
systemctl restart httpd
 +
</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