古い apache から nginx と php 5.3.10 に移行しました。そして、必要に応じて php.ini を変更しようとしたところ、そのうちの 3 つが見つかりました。
$ locate php.ini
/etc/php5/cgi/php.ini
/etc/php5/cli/php.ini
/etc/php5/fpm/php.ini
どちらを編集すればよいですか?
古い apache から nginx と php 5.3.10 に移行しました。そして、必要に応じて php.ini を変更しようとしたところ、そのうちの 3 つが見つかりました。
$ locate php.ini
/etc/php5/cgi/php.ini
/etc/php5/cli/php.ini
/etc/php5/fpm/php.ini
どちらを編集すればよいですか?
一般的に言えば、cli/php.ini
ファイルは PHP バイナリがコマンドラインから呼び出されるときに使用されます。
コマンドラインから
実行されていることを確認できます。php --ini
fpm/php.ini
PHP が FPM として実行されている場合に使用されます。これは、nginx インストールの場合です。
また、Web サーバーが提供する php ページからの
呼び出しを確認できます。phpinfo()
cgi/php.ini
、あなたの状況では、おそらく使用されません。
2 つの異なるphp.ini
ファイル(1 つは CLI 用、もう 1 つは Web サーバーからページを提供するため)を使用することは非常に頻繁に行われ、主な利点が 1 つあります。それぞれの場合に異なる構成値を持つことができます。
通常、php.ini
Web サーバーによって使用されるファイルでは、かなり短い を指定します。Web ページは高速に提供される必要があり、ページが数十秒(デフォルトでは 30 秒)max_execution_time
以上必要な場合は、おそらく次の理由によるものです。バグの - ページの生成を停止する必要があります。
一方、かなり長いスクリプトを crontab から (または手動で)起動することができます。つまり、使用されるファイルは. これらのスクリプトでは、 で指定したよりもはるかに長いを指定します。php.ini
cli/
max_execution_time
cli/php.ini
fpm/php.ini
max_execution_time
は一般的な例です。もちろん、他のいくつかの構成ディレクティブでも同じことができます。
Pascal の回答は詳細で有益でしたが、誰もが使用方法を知っているという前提で、いくつかの重要な情報に言及していませんでした。phpinfo()
そうでない人のために:
次のような Web サーバーのルート フォルダーに移動します。/var/www/
このフォルダー内に、というテキスト ファイルを作成します。info.php
ファイルを編集して入力しますphpinfo()
次のようなファイルに移動します。http://www.example.com/info.php
ここでは、次のphp.ini
パスが表示されLoaded Configuration File
ます。
完了したら必ず削除info.php
してください。
PHP5-FPMを使用しているので、私にとってはfpmです。問題の解決策は、ユニバーサル php.ini を作成し、次のように作成されたシンボリック リンクを使用することです。
ln -s /etc/php5/php.ini php.ini
その後、行った変更は 1 つの一般的な .ini ファイルになります。ただし、これはおそらく最善の解決策ではありません。1 つの場所で 1 つのファイルを文字通り使用するように、構成を変更することを検討することをお勧めします。一緒にハッキングされた複数の場所ではありません。
使用されている php.ini ファイルは次のとおりです。
次に、ロードされた構成ファイルで情報を見つけることができます (ここでは /user/local/etc/php/php.ini です)。
場合によっては、(none) を指定することもありますが、この場合は、ここにあるカスタム php.ini を配置するだけで済みます: http://git.php.net/?p=php-src.git;a=blob ;f=php.ini-プロダクション;hb=HEAD
この回答がお役に立てば幸いです。