2012-04-24 11 views
0

suPHP Webサーバーでカスタムphp.iniファイルを使用すると、そのphp.iniファイルで設定しないすべての変数がデフォルト値を取得します。それらは正確にどこから来たのですか?デフォルトのphp.ini値はどこから来ますか?

例として、完全に空白のphp.iniファイルを使用することができ、構成全体が完了します。 phpinfo()の出力でテストすることができます。

私はcPanelのサーバーでテストしてるとのphpinfoに示したphp.iniの構成パスは次のとおりです。

は/ usr/libに

が、そのパスにphp.iniファイルがないこれらのデフォルト値を持っています私はカスタムphp.iniをいつ作成するのかを見ています。

たとえば、/usr/lib/php.iniには64MBのmemory_limitがありますが、カスタムの空のphp.iniファイルを使用すると、phpinfoにmemory_limit 128MBが表示されます。

デフォルト値がどこに設定されているのかわかりません。どこで見つけることができますか?

答えて

-1

http://www.php.net/manual/en/ini.list.php

一覧。エクステンションは独自の設定とデフォルトを持っているため、これは最終的なリストではありません。

+0

私はPHP自身がデフォルト値を定義していることに気付かなかった。私は彼らが他の設定ファイルから来ていると思った。私はそれらのデフォルトでmemory_limit 128Mを見ることができます、私は確認するために他の値をチェックするつもりです。 –

+0

@PaulSmith別のファイルから来ている可能性があります。.iniファイルの他の場所を見つけるために、 'phpinfo()'の使用についてのAlonの答えを参照してください。 –

+0

私の質問で説明したように、私はすでにphpinfoをチェックしており、設定パスが/ usr/libであることを示していますが、そのパスのphp.iniファイルには128MBと一致しない値64MBのmemory_limit空のphp.iniを使用しているときに取得する –

0

LinuxとApache Webサーバーを使用していると仮定すると、使用しているLinuxディストリビューション、PHPのバージョン、Apache Webサーバーでのインストール方法によって異なります。 php.iniのはここにいることがあります。ここに

に/etc/php.ini

または:

/etc/php/php.ini /etc/php5/php.ini

かここに:

とにかく/usr/bin/php5/bin/php.ini

、あなたは常にこのようにし

をphp.iniの名前の任意のファイルを見つけることができます

検索/ -name php.iniの

あなたはまた、phpinfo();スクリプトからロードした設定ファイルで見ることができます。ディレクティブとデフォルト値の

2

php.iniは、phpスクリプトが実行されると読み込まれる設定ファイルで、phpスクリプトが起動すると現在の作業ディレクトリでそれを探します。存在しない場合はメインサーバのPHPをチェックします。 ini。 register_globals、allow_url_include、allow_url_fopen、open_basedirなど...

したがって、cPanel Web上でphp.iniのパスを見つける方法が不思議である必要がありますサーバ。ルートアクセスがあると仮定すると、パスを確認するコマンドは次のようになります。

[email protected]# php –i | grep php.ini 
Configuration File (php.ini) Path => /usr/local/lib/php.ini 
関連する問題