Changes

Jump to navigation Jump to search
472 bytes added ,  18:45, 26 August 2023
no edit summary
Line 11: Line 11:  
|image={{#var:contribname}}.jpg
 
|image={{#var:contribname}}.jpg
 
|description_image= {{#var:contribname}} logo
 
|description_image= {{#var:contribname}} logo
|maintainer= John Crisp
+
|maintainer= Unilenium, ReetP
|licence= MIT license
+
|licence=
 
|url= https://www.php.net/
 
|url= https://www.php.net/
 
|category= web
 
|category= web
 
|tags=www,http,ssl
 
|tags=www,http,ssl
 
}}
 
}}
==Mainteneur==
+
==Mainteneurs==
John Crisp
+
Unnilennium, ReetP
    
==Description==
 
==Description==
Line 71: Line 71:  
Chaque version de php a son propre service php-fpm en cours d'exécution, l'entrée de la base de données de configuration associée est (comme indiqué dans le tableau ci-dessus) php-fpm pour php (c'est-à-dire php54), php55-php-fpm pour php55 et ainsi de suite.
 
Chaque version de php a son propre service php-fpm en cours d'exécution, l'entrée de la base de données de configuration associée est (comme indiqué dans le tableau ci-dessus) php-fpm pour php (c'est-à-dire php54), php55-php-fpm pour php55 et ainsi de suite.
   −
Si vous souhaitez vraiment désactiver une version de php, voici ce que vous devez faire pour php55, par d'exemple :
+
Si vous souhaitez vraiment désactiver une version de php, voici ce que vous devez faire pour php55, par exemple :
    
  config setprop php55-php-fpm status disabled
 
  config setprop php55-php-fpm status disabled
Line 236: Line 236:  
|
 
|
 
|}
 
|}
Si vous souhaitez définir une valeur spécifique pour une baie, nous montrons ici comment utiliser php80 pour la baie MYIBAY et éviter d'avoir une fonction désactivée :
+
Si vous souhaitez définir une valeur spécifique pour une baie, nous montrons ici comment utiliser php80 pour la baie MABAIE et éviter d'avoir une fonction désactivée :
  db accounts setprop MYIBAY disable_functions none PHPVersion 80
+
  db accounts setprop MABAIE disable_functions none PHPVersion 80
 
  signal-event webapps-update
 
  signal-event webapps-update
 
{{Note box|type=Note :| il est fortement suggéré d'installer la contribution smeserver-webhosting vous permettant de définir vos valeurs php de la baie depuis le gestionnaire de serveur. Tout est disponible et cela vous évite de vous tromper dans les paramètres.}}
 
{{Note box|type=Note :| il est fortement suggéré d'installer la contribution smeserver-webhosting vous permettant de définir vos valeurs php de la baie depuis le gestionnaire de serveur. Tout est disponible et cela vous évite de vous tromper dans les paramètres.}}
   −
===Display Error Messages===
+
===Affichage des messages d'erreur===
 +
Par défaut, PHP n'affiche pas de messages d'erreur à l'écran. Parfois, vous obtenez une page blanche lors de l'exécution de scripts PHP. Habituellement, une sorte d'erreur s'est produite, mais ce texte d'erreur ne sera '''pas''' affiché car SME Server est configuré pour ne pas les afficher. Au lieu de cela, les messages d'erreur figurent dans les fichiers journaux du serveur Web et dans le fichier journal général du serveur.
   −
By default PHP does not display error messages on screen. Sometimes you get a blank page when executing PHP scripts. Usually some sort of error has occurred, but this error text will '''not''' be displayed as SME Server is configured to not display them. Instead the error messages are reported to the log files of the webserver and the general logfile of the server.  
+
Essayez d'analyser vos fichiers journaux : /var/log/httpd/error_log et /var/log/httpd/access_log et peut-être aussi /var/log/messages.
   −
Try to analyze your logfiles:
+
{{Warning box|type=Attention : |il est fortement conseillé de désactiver "l'affichage des erreurs" après avoir repéré et résolu le problème, car le message d'erreur affiché peut fournir des informations (telles que la disposition du système de fichiers) qui ne doivent être connues que des administrateurs système et non des utilisateurs, sans parler des personnes mal intentionnées. Il s'agit donc d'un RISQUE DE SÉCURITÉ potentiel. Après le débogage, désactivez-le à nouveau.}}
/var/log/httpd/error_log and /var/log/httpd/access_log and perhaps also /var/log/messages.
  −
 
  −
{{Warning box|It is strongly advised that you disable "display errors" after you have tracked and solved the problem, as the displayed error message might provide information (like filesystem layout) that only should be known to the system administrators and not to users, let alone people with bad intentions. Thus it is a potential SECURITY RISK. After debugging, disable it again.}}
  −
 
  −
====Enable changes for all php versions====
  −
If you (for debugging purposes for instance) would like to enable it you can do it with the instructions found below:
      +
====Activer les modifications pour toutes les versions de php====
 +
Si vous souhaitez l'activer (à des fins de débogage par exemple), vous pouvez le faire avec les instructions ci-dessous :
 
  mkdir -p /etc/e-smith/templates-custom/etc/php.ini
 
  mkdir -p /etc/e-smith/templates-custom/etc/php.ini
 
  cp /etc/e-smith/templates/etc/php.ini/30ErrorHandling /etc/e-smith/templates-custom/etc/php.ini
 
  cp /etc/e-smith/templates/etc/php.ini/30ErrorHandling /etc/e-smith/templates-custom/etc/php.ini
   −
After that:
+
Puis après :
    
  sed -i /etc/e-smith/templates-custom/etc/php.ini/30ErrorHandling -e 's/display_errors.*/display_errors          = On/g'  
 
  sed -i /etc/e-smith/templates-custom/etc/php.ini/30ErrorHandling -e 's/display_errors.*/display_errors          = On/g'  
   −
After that issue the following commands:
+
Après cela, lancez les commandes suivantes :
    
  signal-event webapps-updates
 
  signal-event webapps-updates
    +
Accédez maintenant à nouveau à votre page et voyez quelle est l’erreur.
   −
Now access your page again and see what the error is.
+
====Annuler les modifications====
 
+
Si tout fonctionne, supprimez le fichier 30ErrorHandling du dossier /etc/e-smith/templates-custom/etc/php.ini et réexécutez les deux dernières lignes :
====Undo Changes====
  −
If everything works you remove the 30ErrorHandling file from the /etc/e-smith/templates-custom/etc/php.ini folder and issue the last two lines again:
  −
 
   
  signal-event webapps-update  
 
  signal-event webapps-update  
   −
====Enable changes for a specific ibay====
+
====Activer les modifications pour une baie spécifique====
Starting SME10 and smeserver-php-3.0.0-39
+
Démarre SME10 et smeserver-php-3.0.0-39
  db accounts setprop MYIBAY DisplayErrors enabled  
+
  db accounts setprop MABAIE DisplayErrors enabled  
 
  signal-event webapps-update
 
  signal-event webapps-update
===Open basedir restriction===
  −
SME Server has a security measure in place which is called 'open basedir restriction'. This measure prevents PHP from executing or invoking other PHP scripts outside the scope of its own tree; in other words it creates a 'sandbox' or 'jail'.
     −
Overall configuration is defined in the php.ini file but you can add an override on a per ibay basis.
+
===Restriction d'ouverture de base ===
 +
SME Server a mis en place une mesure de sécurité appelée « open basedir restriction ». Cette mesure empêche PHP d'exécuter ou d'invoquer d'autres scripts PHP en dehors de la portée de sa propre arborescence ; en d'autres termes, cela crée un « bac à sable » ou une « prison ».
 +
 
 +
La configuration globale est définie dans le fichier php.ini mais vous pouvez ajouter un modification prioritaire sur chaque baie.
   −
====Error message====
+
====Message d'erreur====
The PHP open basedir restriction is usually presented to the user like this in the /var/log/messages file:
+
La restriction d'ouverture de base PHP est habituellement indiquée à l'utilisateur dans le fichier journal /var/log/messages comme ceci :
    
  Aug 12 17:27:42 homer httpd: PHP Warning:  main(): open_basedir restriction in effect. File(/tmp/test.php) is not within the allowed path(s): (/home/e-smith/files/ibays/Primary/html/) in /home/e-smith/files/ibays/Primary/html/test.php on line 2
 
  Aug 12 17:27:42 homer httpd: PHP Warning:  main(): open_basedir restriction in effect. File(/tmp/test.php) is not within the allowed path(s): (/home/e-smith/files/ibays/Primary/html/) in /home/e-smith/files/ibays/Primary/html/test.php on line 2
   −
In general you will find this message in the log files only as by default PHP is configured to prevent the display of error messages to the end users. This can be changed as per [[PHP#Display_Error_Messages|this HowTo]].
+
En général vous ne trouverez ce message que dans les fichiers journaux car, par défaut (cf. supra), PHP est configuré pour empêcher l'affichage de messages d'erreur aux utilisateurs finaux. Cela peut être modifié selon [[PHP#Display_Error_Messages|ce guide en anglais]].
    
====Modifying the PHPBaseDir setting for an ibay====
 
====Modifying the PHPBaseDir setting for an ibay====
3,070

edits

Navigation menu