Files
doc-fr/reference/session/ini.xml
T
Yannick Torres e5b833042e sync with EN
git-svn-id: https://svn.php.net/repository/phpdoc/fr/trunk@177794 c90b9560-bf6c-de11-be94-00142212c4b1
2005-01-20 22:25:26 +00:00

682 lines
20 KiB
XML

<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.27 $ -->
<!-- EN-Revision: 1.29 Maintainer: dams Status: ready -->
<section id="session.configuration">
&reftitle.runtime;
&extension.runtime;
<para>
<table>
&ini.table.title;
<tgroup cols="3">
<thead>
&ini.table.top;
</thead>
<tbody>
<row>
<entry>session.save_path</entry>
<entry>"/tmp"</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.name</entry>
<entry>"PHPSESSID"</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.save_handler</entry>
<entry>"files"</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.auto_start</entry>
<entry>"0"</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.gc_probability</entry>
<entry>"1"</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.gc_divisor</entry>
<entry>"100"</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.gc_maxlifetime</entry>
<entry>"1440"</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.serialize_handler</entry>
<entry>"php"</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.cookie_lifetime</entry>
<entry>"0"</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.cookie_path</entry>
<entry>"/"</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.cookie_domain</entry>
<entry>""</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.cookie_secure</entry>
<entry>""</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.use_cookies</entry>
<entry>"1"</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.use_only_cookies</entry>
<entry>"0"</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.referer_check</entry>
<entry>""</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.entropy_file</entry>
<entry>""</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.entropy_length</entry>
<entry>"0"</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.cache_limiter</entry>
<entry>"nocache"</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.cache_expire</entry>
<entry>"180"</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.use_trans_sid</entry>
<entry>"0"</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.bug_compat_42</entry>
<entry>"1"</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.bug_compat_warn</entry>
<entry>"1"</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.hash_function</entry>
<entry>"0"</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>session.hash_bits_per_character</entry>
<entry>"4"</entry>
<entry>PHP_INI_ALL</entry>
</row>
<row>
<entry>url_rewriter.tags</entry>
<entry>"a=href,area=href,frame=src,form=,fieldset="</entry>
<entry>PHP_INI_ALL</entry>
</row>
<!-- Not yet
<row>
<entry>session.encode_sources</entry>
<entry>"globals</entry>
<entry>track"</entry>
</row>
-->
</tbody>
</tgroup>
</table>
&ini.table.bottom;
</para>
<para>
Le système de sessions dispose d'un grand nombre de directives
dans le fichier &php.ini;. En voici une présentation :
<variablelist>
<varlistentry id="ini.session.save-handler">
<term>
<parameter>session.save_handler</parameter>
<type>string</type>
</term>
<listitem>
<simpara>
Définit le nom du gestionnaire
de session qui est utilisé pour stocker et relire les
données. Par défaut, c'est le système intégré
par fichiers : <literal>files</literal>. Voir aussi
<function>session_set_save_handler</function>.
</simpara>
</listitem>
</varlistentry>
<varlistentry id="ini.session.save-path">
<term>
<parameter>session.save_path</parameter>
<type>string</type>
</term>
<listitem>
<simpara>
Définit le chemin qui doit être passé
au gestionnaire de sauvegarde. Si vous décidez de
choisir le gestionnaire par défaut (par fichier),
cet argument sera utilisé comme dossier de sauvegarde
des sessions. Par défaut, il vaut <filename>/tmp</filename>.
Voir aussi <function>session_save_path</function>.
</simpara>
<para>
Il y a un argument optionnel <literal>N</literal> à cette directive qui détermine
la profondeur de répertoires où votre fichier de session sera stocké.
Par exemple, si vous définissez <literal>'5;/tmp'</literal>, votre fichier
sera situé dans <literal>/tmp/4/b/1/e/3/sess_4b1e384ad74619bd212e236e52a5a174If
</literal>. Si vous voulez utiliser <literal>N</literal>, vous devez créer
tous ces répertoires avant de les utiliser. Un petit script shell existe dans
<filename>ext/session</filename> pour réaliser ces créations et il se nomme
<filename>mod_files.sh</filename>. Notez également que si <literal>N</literal>
est utilisé et est supérieur à 0, alors la routine automatique gc (garbage collection)
ne sera pas exécuté ; voir une copie de &php.ini; pour plus d'informations.
Egalement, si vous utilisez <literal>N</literal>, assurez-vous d'entourer
<literal>session.save_path</literal> de "doubles guillemets" car le séparateur
(<literal>;</literal>) est également utilisé pour les commentaires dans
&php.ini;.
</para>
<warning>
<para>
Si vous laissez cette option configurée avec un dossier
accessible en lecture à tout le monde, comme
<filename>/tmp</filename> (par défaut), les autres utilisateurs
pourront exploiter ces sessions en obtenant la liste de fichiers
dans ce dossier.
</para>
</warning>
<note>
<simpara>
Avant &php; 4.3.6;, les utilisateurs de Windows doivent changer
cette valeur de variable pour que les fonctions de sessions de
&php; fonctionnent. Indiquez un chemin de dossier valide, par
exemple : <filename>c:/temp</filename>.
</simpara>
</note>
</listitem>
</varlistentry>
<varlistentry id="ini.session.name">
<term>
<parameter>session.name</parameter>
<type>string</type>
</term>
<listitem>
<simpara>
Spécifie le nom de la session,
qui sera utilisé comme nom de cookie. Il ne doit contenir que
des caractères alphanumérique. Par défaut, c'est
<literal>PHPSESSID</literal>.
Voir aussi <function>session_name</function>.
</simpara>
</listitem>
</varlistentry>
<varlistentry id="ini.session.auto-start">
<term>
<parameter>session.auto_start</parameter>
<type>boolean</type>
</term>
<listitem>
<simpara>
Spécifie si le module
de session doit démarrer automatiquement au début de
chaque script &php;. Par défaut, c'est &zero;
(désactivé).
</simpara>
</listitem>
</varlistentry>
<varlistentry id="ini.session.serialize-handler">
<term>
<parameter>session.serialize_handler</parameter>
<type>string</type>
</term>
<listitem>
<simpara>
Définit le nom
du gestionnaire qui est utilisé pour linéariser/délinéariser
les données. Actuellement, un format interne à &php;
(nommé <literal>php</literal>) et WDDX (nommé
<literal>wddx</literal>) sont supportés . WDDX est seulement
disponible, si &php; a été compilé avec l'option
<link linkend="ref.wddx">WDDX</link>. Par défaut, c'est <literal>php</literal>.
</simpara>
</listitem>
</varlistentry>
<varlistentry id="ini.session.gc-probability">
<term>
<parameter>session.gc_probability</parameter>
&integer;
</term>
<listitem>
<simpara>
Spécifie la probabilité, exprimée en pourcentage, en conjonction de
<literal>session.gc_divisor</literal>, que la routine gc (garbage collection)
soit démarrée à chaque requête. La valeur par défaut est &one;.
Voir <link
linkend="ini.session.gc-divisor">session.gc_divisor</link> pour plus de détails.
</simpara>
</listitem>
</varlistentry>
<varlistentry id="ini.session.gc-divisor">
<term>
<parameter>session.gc_divisor</parameter>
&integer;
</term>
<listitem>
<simpara>
<literal>session.gc_divisor</literal> en conjonction de
<literal>session.gc_divisor</literal> définie la probabilité que la routine gc
(garbage collection) soit démarré à chaque début de session.
La probabilité est calculé en utilisant gc_probability/gc_divisor, e.g
1/100 signifie qu'il y a 1% de chance pour que la routine gc démarre à chaque
requête. La valeur par défaut est <literal>100</literal>.
</simpara>
</listitem>
</varlistentry>
<varlistentry id="ini.session.gc-maxlifetime">
<term>
<parameter>session.gc_maxlifetime</parameter>
&integer;
</term>
<listitem>
<simpara>
Spécifie la durée de
vie des données sur le serveur, en nombre de secondes. Après
cette durée, les données seront considérées comme obsolètes,
et supprimées.
</simpara>
<note>
<simpara>
Si vous utilisez le gestionnaire de session par fichier,
qui est fourni par défaut votre système doit garder la trace des
dates de dernier accès aux fichier (atime). La FAT de Windows ne le
fait pas, alors il vous faudra trouver un autre système pour gérer
les sessions qui ont expirées. Depuis &php; 4.2.3, on utilise
mtime (date de modification) au lieu de atime.
Donc, vous n'aurez plus de souci avec les systèmes de fichiers qui ne gèrent
pas atime.
</simpara>
</note>
</listitem>
</varlistentry>
<varlistentry id="ini.session.referer-check">
<term>
<parameter>session.referer_check</parameter>
&integer;
</term>
<listitem>
<simpara>
Contient une sous-chaîne
que vous souhaitez retrouver dans tous les en-têtes HTTP Referer. Si
cet en-tête a été envoyé par le client, et que la sous-chaîne n'a pas
été trouvé, l'identifiant de session sera considéré comme invalide.
Par défaut, cette option est une chaîne vide.
</simpara>
</listitem>
</varlistentry>
<varlistentry id="ini.session.entropy-file">
<term>
<parameter>session.entropy_file</parameter>
<type>string</type>
</term>
<listitem>
<simpara>
Est un chemin jusqu'à
une source externe (un fichier), qui sera utilisée comme source
additionnelle d'entropie pour la création de l'identifiant
de session. Des exemples valides sont <literal>/dev/random</literal> et
<literal>/dev/urandom</literal>, qui sont disponibles sur
tous les systèmes Unix.
</simpara>
</listitem>
</varlistentry>
<varlistentry id="ini.session.entropy-length">
<term>
<parameter>session.entropy_length</parameter>
&integer;
</term>
<listitem>
<simpara>
Spécifie le nombre d'octets
qui seront lus dans le fichier défini ci-dessus. Par défaut, il
vaut &zero;, c'est à dire inactif.
</simpara>
</listitem>
</varlistentry>
<varlistentry id="ini.session.use-cookies">
<term>
<parameter>session.use_cookies</parameter>
<type>boolean</type>
</term>
<listitem>
<simpara>
Spécifie si le module utilisera
les cookies pour stocker les données de session sur le client.
Par défaut, il vaut &one;, c'est à dire actif.
</simpara>
</listitem>
</varlistentry>
<varlistentry id="ini.session.use-only-cookies">
<term>
<parameter>session.use_only_cookies</parameter>
<type>boolean</type>
</term>
<listitem>
<simpara>
Spécifie si le module
doit utiliser <emphasis role="strong">seulement</emphasis> les cookies
pour stocker les identifiants de sessions du coté du navigateur. Par défaut,
cette option vaut &zero; (inactif, pour compatibilité ascendante).
En l'activant, vous éviterez les attaques qui utilisent des
identifiants de sessions dans les URL. Cette configuration a été ajoutée
en &php; 4.3.0.
</simpara>
</listitem>
</varlistentry>
<varlistentry id="ini.session.cookie-lifetime">
<term>
<parameter>session.cookie_lifetime</parameter>
&integer;
</term>
<listitem>
<simpara>
Spécifie la durée de
vie du cookie en secondes. La valeur de &zero;
signifie : "Jusqu'à ce que le navigateur soit éteint".
La valeur par défaut est : &zero;. Voir aussi
<function>session_get_cookie_params</function> et
<function>session_set_cookie_params</function>.
</simpara>
</listitem>
</varlistentry>
<varlistentry id="ini.session.cookie-path">
<term>
<parameter>session.cookie_path</parameter>
<type>string</type>
</term>
<listitem>
<simpara>
Spécifie le chemin utilisé
lors de la création du cookie. Par défaut, il vaut <literal>/</literal>.
Voir aussi
<function>session_get_cookie_params</function> et
<function>session_set_cookie_params</function>.
</simpara>
</listitem>
</varlistentry>
<varlistentry id="ini.session.cookie-domain">
<term>
<parameter>session.cookie_domain</parameter>
<type>string</type>
</term>
<listitem>
<simpara>
Spécifie le domaine utilisé
lors de la création du cookie. Par défaut, il ne vaut rien.
Voir aussi
<function>session_get_cookie_params</function> et
<function>session_set_cookie_params</function>.
</simpara>
</listitem>
</varlistentry>
<varlistentry id="ini.session.cookie-secure">
<term>
<parameter>session.cookie_secure</parameter>
<type>boolean</type>
</term>
<listitem>
<simpara>
Spécifie que les cookies ne doivent être émis que sur des
connexion sécurisée. Par défaut, cette option est à
<literal>off</literal>. Cette option a été ajoutée en
&php; 4.0.4.
Voir aussi
<function>session_get_cookie_params</function> et
<function>session_set_cookie_params</function>.
</simpara>
</listitem>
</varlistentry>
<varlistentry id="ini.session.cache-limiter">
<term>
<parameter>session.cache_limiter</parameter>
<type>string</type>
</term>
<listitem>
<simpara>
Spécifie le type de
contrôle de cache utilisé pour les pages avec sessions. Les
valeurs possibles sont :
none, nocache, private, private_no_expire, public. Par défaut, il vaut
<literal>nocache</literal>.
Voir aussi
<function>session_cache_limiter</function>.
</simpara>
</listitem>
</varlistentry>
<varlistentry id="ini.session.cache-expire">
<term>
<parameter>session.cache_expire</parameter>
&integer;
</term>
<listitem>
<simpara>
Spécifie la durée de
vie des données de sessions, en minute. Cette option n'a aucune
conséquence sur le contrôle de cache. Par défaut, il vaut
<literal>180</literal> (3 heures).
Voir aussi
<function>session_cache_expire</function>.
</simpara>
</listitem>
</varlistentry>
<varlistentry id="ini.session.use-trans-sid">
<term>
<parameter>session.use_trans_sid</parameter>
<type>boolean</type>
</term>
<listitem>
<simpara>
Spécifie si le support du SID est transparent ou pas. Par défaut vaut &zero;
(désactivé).
</simpara>
<note>
<simpara>
En &php; 4.1.2 ou plus ancien, cette option est activée en utilisant
l'option de compilation <link linkend="configure.enable-trans-sid">
<literal>--enable-trans-sid</literal></link>.
Depuis &php; 4.2.0, cette option est toujours activée.
</simpara>
<simpara>
Le système de gestion des sessions par URL pose un risque
supplémentaire de sécurité : un utilisateur peut envoyer
son URL avec l'identifiant de session par email à un ami,
ou bien le mettre dans ses signets. Cela diffusera alors
l'identifiant de session.
</simpara>
</note>
</listitem>
</varlistentry>
<varlistentry id="ini.session.bug-compat-42">
<term>
<parameter>session.bug_compat_42</parameter>
<type>boolean</type>
</term>
<listitem>
<simpara>
Les versions de &php; antérieures à la version 4.2.0
disposaient d'une
fonctionnalité/bogue non documentée, qui vous permettait
d'initialiser une variable de session dans le contexte global, même si
<link linkend="ini.register-globals">register_globals</link>
était désactivé. &php; 4.3.0 et plus récent vous préviendra de l'utilisation
de cette fonctionnalité si vous avez aussi activé
<link linkend="ini.session.bug-compat-warn">session.bug_compat_warn</link>.
</simpara>
</listitem>
</varlistentry>
<varlistentry id="ini.session.bug-compat-warn">
<term>
<parameter>session.bug_compat_warn</parameter>
<type>boolean</type>
</term>
<listitem>
<simpara>
Les versions de &php; antérieures à la version 4.2.0
disposaient d'une
fonctionnalité/bogue non-documentée, qui vous permettait d'initialiser
une variable de session dans le contexte global, même si
<link linkend="ini.register-globals">register_globals</link>
était désactivé. &php; 4.3.0 et plus récent vous préviendra de l'utilisation
de cette fonctionnalité si vous avez activé
<link linkend="ini.session.bug-compat-42">session.bug_compat_42</link>
et <link linkend="ini.session.bug-compat-warn">session.bug_compat_warn</link>.
</simpara>
</listitem>
</varlistentry>
<varlistentry id="ini.session.hash-function">
<term>
<parameter>session.hash_function</parameter>
&integer;
</term>
<listitem>
<simpara>
<literal>session.hash_function</literal> vous permet de spécifier la fonction
de hachage à utiliser pour générer les identifiants de session. '0' signifie
MD5 (128 bits) et '1' signifie SHA-1 (160 bits).
</simpara>
<note>
<para>
Cette directive a été ajoutée en &php; 5.
</para>
</note>
</listitem>
</varlistentry>
<varlistentry id="ini.session.hash-bits-per-character">
<term>
<parameter>session.hash_bits_per_character</parameter>
&integer;
</term>
<listitem>
<simpara>
<literal>session.hash_bits_per_character</literal> vous permet de définir
le nombre de bits utilisés pour chaque caractère lors des conversions des
données binaires en éléments lisibles. Les valeurs possibles sont '4' (0-9,
a-f), '5' (0-9, a-v), et '6' (0-9, a-z, A-Z, "-", ",").
</simpara>
<note>
<para>
Cette directive a été ajoutée en &php; 5.
</para>
</note>
</listitem>
</varlistentry>
<varlistentry id="ini.url-rewriter.tags">
<term>
<parameter>session.url_rewriter.tags</parameter>
<type>string</type>
</term>
<listitem>
<simpara>
Spécifie quels sont les balises HTML qui doivent
être réécrites si le support transparent du SID
est activé. Par défaut, il vaut
<literal>a=href,area=href,frame=src,input=src,form=fakeentry,fieldset=</literal>.
</simpara>
<note>
<simpara>
Si vous voulez vous conformer avec les spécifications XHTML, supprimer l'entrée
<literal>form</literal> et utiliser le tag &lt;fieldset&gt; autour de votre balise
form.
</simpara>
</note>
</listitem>
</varlistentry>
</variablelist>
</para>
<para>
Les options <link linkend="ini.track-vars"><literal>track_vars</literal></link> et
<link linkend="ini.register-globals"><literal>register_globals</literal></link>
influencent le comportement des sessions, leur stockage et leur restauration.
</para>
<note>
<para>
Depuis &php; 4.0.3, <link
linkend="ini.track-vars"><literal>track_vars</literal></link> est
toujours activé.
</para>
</note>
</section>
<!-- 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
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->