質問

私はそれを見つけました:

ターミナルで次のと入力するとき:

php -i | grep php.ini

出力を取得します:

ロードされた構成ファイルは @ /etc/php5/cli/php.iniです

しかし、から phpinfo(), 、私は見ることができます:

ロードされたINIファイルは @ /etc/php5/apache2/php.iniです

これらのどれが今機能していますか? 2つを持つことはどのように可能ですか php.ini ファイル?

役に立ちましたか?

解決

PHPをどこから実行しているかによって異なります。コマンドラインから実行すると、 cli/php.iniapache2/php.ini Apacheを駆け抜けるとき。

あなたは実行しています phpinfo() ブラウザを介して、あなたは取得します /etc/php5/apache2/php.ini 答えとして。ランニング php -r "phpinfo();" | grep "Loaded Configuration" 端子からCli iniを出力する必要があります。同じ関数、コンテキストの変更。

このシステムの利点は、明らかにコンテキストに応じて異なる構成を許可することです。単純化された例として、あなたは持っているかもしれません safe_mode Apacheでは、CLIモードでは不要です。

あなたの .ini パスは実際には非常に珍しいです。通常、デフォルトの.iniは公正です php.ini とcli .iniが呼ばれます php-cli.ini そして、それらは同じフォルダーに住んでいます。

私はこのテーマの専門家ではありませんが、これが基本的なアイデアであるべきです。誰かが修正を持っているなら、私はそれらを聞いてうれしいです。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top