Comment savoir quel php.ini est utilisé?
je cherche le chemin où le php.le fichier ini est situé dans notre serveur Ubuntu Linux, et j'ai trouvé beaucoup de php.ini lors de l'exécution de la commande find / -name php.ini
. Alors comment savoir exactement à partir d'une page Web de script php où le php.ini ?
6 réponses
Vous pouvez utiliser php_ini_loaded_file ()
tiré de php.net:
$inipath = php_ini_loaded_file();
if ($inipath) {
echo 'Loaded php.ini: ' . $inipath;
} else {
echo 'A php.ini file is not loaded';
}
Vous pouvez également vouloir vérifier php_ini_scanned_files ()
aussi, vous devriez noter que si vous exécutez un script PHP de CLI, il est possible qu'unphp.ini
le fichier sera utilisé que si un serveur (i.e. Nginx ou apache) l'exécute.
autres options:
php -i|grep 'php.ini'
- créer
info.php
qui contient<?php phpinfo();
dans le webroot, et l'exécuter dans votre navigateur
php --ini
Pour le serveur-SAPIs utiliser phpinfo()
Voici un exemple de sortie:
bash-3.2# php --ini
Configuration File (php.ini) Path: /usr/local/php5/lib
Loaded Configuration File: /usr/local/php5/lib/php.ini
Scan for additional .ini files in: /usr/local/php5/php.d
Additional .ini files parsed: /usr/local/php5/php.d/10-extension_dir.ini,
/usr/local/php5/php.d/20-extension-opcache.ini,
/usr/local/php5/php.d/40-openssl.ini,
/usr/local/php5/php.d/50-extension-apcu.ini,
/usr/local/php5/php.d/50-extension-curl.ini,
/usr/local/php5/php.d/50-extension-gmp.ini,
/usr/local/php5/php.d/50-extension-imap.ini,
/usr/local/php5/php.d/50-extension-intl.ini,
/usr/local/php5/php.d/50-extension-mcrypt.ini,
/usr/local/php5/php.d/50-extension-mssql.ini,
/usr/local/php5/php.d/50-extension-pdo_pgsql.ini,
/usr/local/php5/php.d/50-extension-pgsql.ini,
/usr/local/php5/php.d/50-extension-propro.ini,
/usr/local/php5/php.d/50-extension-raphf.ini,
/usr/local/php5/php.d/50-extension-readline.ini,
/usr/local/php5/php.d/50-extension-xdebug.ini,
/usr/local/php5/php.d/50-extension-xsl.ini,
/usr/local/php5/php.d/60-extension-pecl_http.ini,
/usr/local/php5/php.d/99-liip-developer.ini
notez que la configuration chargée pour PHP quand il est utilisé sur la console est différente de la configuration pour le processus web. La plupart des installations PHP seraient fournies avec un php.ini pour apache et un autre pour CLI.
Pour savoir quel fichier de configuration est utilisé pour les commandes de la console, utiliser
$ php -i | grep "Configuration File"
pour savoir quel fichier de configuration est utilisé pour les processus web, suivez ces étapes
- créer un fichier info [de préférence à la racine dossier]
- Le contenu de ce fichier doit être
<?php phpinfo(); ?>
Ctrl+F
et rechercher "fichier de Configuration"
Vous devez utiliser la méthode php php_ini_loaded_file
(seulement après php 5.2.4)
php_ini_loaded_file-récupérez un chemin vers le php chargé.fichier ini
site web php exemple:
<?php
$inipath = php_ini_loaded_file();
if ($inipath) {
echo 'Loaded php.ini: ' . $inipath;
} else {
echo 'A php.ini file is not loaded';
}
?>
Source: php site
créez une page simple et elle y sera listée!
<?php
phpinfo();
?>
il suffit de mettre un fichier comme ceci:
<?php
phpinfo();
?>
alors cherchez
Loaded Configuration File
vous verrez le chemin complet pour php.fichier ini