Lorsque vous utilisez le module Apache, vous pouvez aussi changer les paramètres de configuration en utilisant les directives dans les fichiers de configuration d'Apache (httpd.conf) et dans les fichiers .htaccess. Vous aurez besoin des privilèges "AllowOverride Options" ou "AllowOverride All".
Il y a de nombreuses directives
Apache qui vous permettent de modifier la configuration de PHP
à partir des fichiers de configuration Apache. Pour une liste des
directives qui sont PHP_INI_ALL
,
PHP_INI_PERDIR
ou PHP_INI_SYSTEM
reportez-vous à l'annexe Liste des directives
du php.ini.
php_value
nom
valeur
Modifie la valeur de la directive spécifiée.
Cette instruction n'est utilisable qu'avec les directives PHP de type
PHP_INI_ALL
et PHP_INI_PERDIR
.
Pour annuler une valeur qui aurait été modifiée au préalable,
utilisez la valeur none.
Note: N'utilisez pas
php_value
pour configurer des valeurs booléennes.php_flag
(voir plus bas) doit être utilisée.
php_flag
nom
on|off
Cette instruction est utilisée pour activer ou
désactiver une option.
Cette instruction n'est utilisable qu'avec les directives
PHP de type PHP_INI_ALL
et
PHP_INI_PERDIR
.
php_admin_value
nom
valeur
Cette instruction affecte une valeur à la variable spécifiée.
Cette instruction NE peut PAS être utilisée dans un fichier
.htaccess. Toute directive de PHP configurée avec le type
php_admin_value
ne peut pas être
modifiée en utilisant le fichier .htaccess ou la fonction ini_set().
Pour annuler une valeur qui aurait été modifiée au préalable, utilisez la
valeur none.
php_admin_flag
name
on|off
Cette directive est utilisée pour activer ou désactiver une option.
Cette instruction NE peut PAS être utilisée dans un fichier
.htaccess. Toute directive de PHP configurée avec le type
php_admin_flag
ne peut pas être
modifiée en utilisant le fichier .htaccess ou par la fonction ini_set().
Exemple #1 Exemple de configuration Apache
<IfModule mod_php5.c> php_value include_path ".:/usr/local/lib/php" php_admin_flag engine on </IfModule> <IfModule mod_php4.c> php_value include_path ".:/usr/local/lib/php" php_admin_flag engine on </IfModule>
Les constantes PHP n'existent pas en dehors de PHP. Par
exemple, dans le fichier httpd.conf,
vous ne pouvez pas utiliser des constantes PHP telles que
E_ALL
ou E_NOTICE
pour spécifier
le niveau de rapport d'erreur,
car ces constantes n'ont pas de signification pour Apache,
et seront remplacées par 0.
Utilisez les valeurs numériques à la place.
Les constantes peuvent être utilisées dans le php.ini
Lorsque vous utilisez PHP sur Windows, la configuration peut
être modifiée dossier par dossier en utilisant la base de registres
de Windows. Les valeurs de configuration sont stockées
avec la clé de registre
HKLM\SOFTWARE\PHP\Per Directory Values,
dans les sous-clés correspondantes aux noms de dossier. Par exemple,
la valeur d'une option dans le dossier c:\inetpub\wwwroot
sera stockée dans la clé
HKLM\SOFTWARE\PHP\Per Directory Values\c\inetpub\wwwroot.
La valeur de cette option sera utilisée pour tous les
scripts qui fonctionnent dans ce dossier ou ses sous-dossiers.
Les valeurs sous la clé doivent avoir le nom d'une
direction de configuration PHP,
et la valeur correspondante. Les constantes PHP ne sont
pas utilisables : il faut mettre la valeur entière.
Cependant, seules les valeurs des configurations dans
PHP_INI_USER
peuvent être fixées de cette manière,
celles dans PHP_INI_PERDIR
ne peuvent l'être.
Suivant la façon dont vous exécutez PHP, vous pouvez changer certaines valeurs durant l'exécution de vos scripts en utilisant ini_set(). Voir la documentation de la fonction ini_set() pour plus d'informations.
Si vous êtes intéressé par une liste complète des options configurées sur votre système avec leurs valeurs courantes, vous pouvez exécuter la fonction phpinfo() et consulter la page résultante. Vous pouvez aussi accéder individuellement aux directives de configuration pendant l'exécution de vos scripts en utilisant soit la fonction ini_get(), soit la fonction get_cfg_var().