Linux Ubuntuサーバーでphp.iniファイルがあるパスを検索し、コマンドfind / -name php.ini
を実行すると、多くのphp.iniが見つかりました。それでは、php.iniが置かれているphpスクリプトWebページから正確に知る方法は?
php_ini_loaded_file() を使用できます
Php.netから取得:
_$inipath = php_ini_loaded_file();
if ($inipath) {
echo 'Loaded php.ini: ' . $inipath;
} else {
echo 'A php.ini file is not loaded';
}
_
php_ini_scanned_files() を確認することもできます
また、CLIからPHPスクリプトを実行する場合、サーバー(nginxまたはApache)が実行する場合とは異なる_php.ini
_ファイルが使用される可能性があることに注意してください。 。
別のオプション:
php -i|grep 'php.ini'
_<?php phpinfo();
を含む_info.php
_を作成し、ブラウザで実行します_php --ini
_
WebサーバーSAPIの場合は、phpinfo()
を使用します
出力例を次に示します。
_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
_
PHPコンソールで使用されている場合に読み込まれる設定は、Webプロセスの設定とは異なります。ほとんどのPHPインストールには、PHPが付属しますApache用の.iniとCLI用の.ini。
コンソールコマンドに使用される構成ファイルを知るには、次を使用します。
_$ php -i | grep "Configuration File"
_
Webプロセスに使用されている構成ファイルを知るには、以下の手順を実行します
<?php phpinfo(); ?>
である必要がありますCtrl+F
_および「構成ファイル」の検索Phpメソッドphp_ini_loaded_file
を使用する必要があります(php 5.2.4以降のみ)
php_ini_loaded_file —ロードされたphp.iniファイルへのパスを取得する
pHPウェブサイトの例:
<?php
$inipath = php_ini_loaded_file();
if ($inipath) {
echo 'Loaded php.ini: ' . $inipath;
} else {
echo 'A php.ini file is not loaded';
}
?>
ソース: phpサイト
このようなファイルを置くだけです:
<?php
phpinfo();
?>
次に探す
Loaded Configuration File
php.iniファイルのフルパスが表示されます
簡単なページを作成すると、そこにリストされます!
<?php
phpinfo();
?>
前述のように、「find/-name php.ini」はすべてのphp.iniファイルの取得に役立ちます。あなたが編集しているかもしれないものは、サーバーがコマンドを引き出しているものではないかもしれません!サーバーでphpの3つの異なるバージョンのphp.iniを見つけましたが、すぐに修正されました。