cvs: phpdoc /fr/features safe-mode.xml

From: Date: Wed, 11 Jul 2001 09:16:05 +0000
Subject: cvs: phpdoc /fr/features safe-mode.xml
Groups: php.doc 
Request: Send a blank email to phpdoc+get-969336121@lists.php.net to get a copy of this message
dams Wed Jul 11 05:16:05 2001 EDT Added files: /phpdoc/fr/features safe-mode.xml Log: Added safe-mode. Index: phpdoc/fr/features/safe-mode.xml +++ phpdoc/fr/features/safe-mode.xml <chapter id="features.safe-mode"> <title>Safe mode</title> <para> Le "Safe Mode" est le mode de s&eacute;curit&eacute; de PHP : une solution au probl&egrave;me de partage de PHP sur un serveur. Ce syst&egrave;me p&ecirc;che au niveau de l'architecture car il n'est pas correct de tenter de r&eacute;soudre ce probl&egrave;me au niveau de PHP, mais les solutions alternatives bas&eacute;es sur le serveur web et l'OS ne sont pas r&eacute;alistes. De nombreux acteurs, notamment les fournisseurs d'h&eacute;bergement, utilise le "Safe Mode". </para> <para> Les directives de configuration qui contr&ocirc;lent le safe mode sont : <programlisting role="ini"> safe_mode = Off open_basedir = safe_mode_exec_dir = safe_mode_allowed_env_vars = PHP_ safe_mode_protected_env_vars = LD_LIBRARY_PATH disable_functions = </programlisting> </para> <para> Lore que safe mod est actif, PHP v&eacute;rifie que le propri&eacute;taire du script courant est le m&ecirc;me que le propri&eacute;taire de fichier qui seront manipul&eacute; par ce script. Par exemple, si on a la situation suivante : <programlisting role="ls"> -rw-rw-r-- 1 rasmus rasmus 33 Jul 1 19:20 script.php -rw-r--r-- 1 root root 1116 May 26 18:01 /etc/passwd </programlisting> Ex&eacute;cuter le script <filename>script.php</filename> <programlisting role="php"> &lt;?php readfile('/etc/passwd'); ?&gt; </programlisting> g&eacute;n&eacute;rera cette erreur, si le safe mode est activ&eacute; : <programlisting role="php"> Warning: SAFE MODE Restriction in effect. The script whose uid is 500 is not allowed to access /etc/passwd owned by uid 0 in /docroot/script.php on line 2 </programlisting> </para> <para> Si vou utilisez la directive open_basedir au lieu du safe mode, alors les manipulations seront limit&eacute;es aux fichiers situ&eacute;s dans les dossiers sp&eacute;cifi&eacute;s. Par exemple : <programlisting role="ini"> &lt;Directory /docroot&gt; php_admin_value open_basedir /docroot &lt;/Directory&gt; </programlisting> Si vous ex&eacute;cutez le script <filename>script.php</filename> ci-dessus avec la configuration d'open_basedir le r&eacute;sultat sera l'affichage suivant : <programlisting role="php"> Warning: open_basedir restriction in effect. File is in wrong directory in /docroot/script.php on line 2 </programlisting> </para> <para> Vous pouvez aussi d&eacute;sactiver individuellement les fonctions. Par exemple, en ajoutant cette ligne dans le fichier <filename>php.ini</filename> : <programlisting role="ini"> disable_functions readfile,system </programlisting> toute utilisation des fonctions <function>readfile<function> et <function>system<function> g&eacute;n&eacute;rera l'affichage suivant : <programlisting role="php"> Warning: readfile() has been disabled for security reasons in /docroot/script.php on line 2 </programlisting> </para> </chapter> <!-- Keep this comment at the end of the file Local variables: mode: sgml sgml-omittag:t sgml-shorttag:t sgml-minimize-attributes:nil sgml-always-quote-attributes:t sgml-indent-step:1 sgml-indent-data:t sgml-parent-document:nil sgml-default-dtd-file:"../manual.ced" sgml-exposed-tags:nil sgml-local-catalogs:nil sgml-local-ecat-files:nil End: -->

« previous php.doc (#969336121) next »