正しいphp.iniファイルを見つける


169

私は現在、正しいphp.iniファイルを見つけて編集し、apacheを再起動しようとしています。そのため、変更が行われ、困惑しています。

私は3つの異なるphp.iniファイルを見つけました(なぜ3つあるのか分かりません)これがファイルの見つけ方です

$ sudo find / -name php.ini
/etc/php5/cli/php.ini
/etc/php5/apache2/php.ini
/etc/php5/cgi/php.ini

私も…。

$ sudo php -i | grep 'Configuration File'
Configuration File (php.ini) Path => /etc/php5/cli
Loaded Configuration File => /etc/php5/cli/php.ini

すべてを(確かに)必要な設定に変更しました。

を使用してApacheを再起動しました

sudo service apache2 restart

結果...

* Restarting web server apache2

ページをリロードしたところ、php.iniファイルが更新されていないことがわかりました。

私はこれを知っている

echo ini_get('post_max_size');

これは20Mに変更されるはずでしたが、まだ2Mでした

私はおそらくapacheサーバーを停止し、正しい設定でphp.iniファイルをリロードすると考えてコンピューターを再起動しましたが、残念ながらその試みも失敗しました。

干渉する可能性のある別のphp.iniファイルが存在する可能性はありますか?


6
「正しい」ものはapache2サブディレクトリにあります
-Joren

1
updatedb; locate php.ini代わりに使用しますfind
sjas

@Michaelこのファイルは/etc/php/5.6/apache2/php.iniUbuntu 16.04 LTS Xenial Xerusにあり5.6/ます。ここで、インストールされているphpのバージョンです。最初にファイルをコピーしてからphp.original.ini編集用に開き ますsudo gedit /etc/php/5.6/apache2/php.ini
ヘドリーフィンガー

回答:


289

そこにある3つのファイルは、それぞれ異なる用途向けです。

/etc/php/5.6/cli/php.iniphpターミナルで実行して見つけたCLI PHPプログラム用です。

/etc/php/5.6/cgi/php.ini このセットアップでは特に使用されないphp-cgiシステム用です。

/etc/php/5.6/apache2/php.iniApacheが使用するPHPプラグイン用です。 これは、 Apacheセットアップに変更を適用するために編集する必要があるものです

/etc/php/5.6/fpm/php.iniするためのものであるphp5-fpm(へのnginxからハンドオフするようPHP処理用のFastCGI互換「ラッパー」であるプロセッサ、php5-fpm)および(ApacheのPHPプラグインとは異なり)システム上で、スタンドアロンプロセスとして実行

Ubuntuのバージョンの低い 16.04より、/etc/php/5.6//etc/php/7.0//etc/php/7.1/、など、によって置換されている/etc/php5/ようにと。それ以外の場合、これらのパスは正確なままです。これを環境に合わせて調整し、5.6または番号を環境に存在する実際のバージョンフォルダーに置き換えます。


1
php.iniが/ etc / php5 / apache2ディレクトリに見つかりません。ただし、cliディレクトリにあります。
アヌジTBE

2
@ anujsharma9196唯一の理由は、PHP用のApacheビルドプラグインを使用していない場合です。ファイルパスは今でもここにリストされているように機能します(私の15.04 VMで確認済み)
トーマスウォード

21

ブラウザでこのスニペットを含むスクリプトを実行してから、Loaded Configuration File<?php phpinfo(); ?>などの検索を試みてください。このエントリは、ApacheサーバーでPHPが使用するphp.iniを指定します。


14

php.iniCLIが使用しているものを見つけるには、次を実行します。

php -i | grep 'php.ini'

出力例:

$ php -i | grep 'php.ini'

Configuration File (php.ini) Path => /etc/php/7.0/cli
Loaded Configuration File => /etc/php/7.0/cli/php.ini

これは受け入れられた答えであるはずです!
マルセロアギル

1
これは良いことですが、PHPのみのcliロードされた構成を提供します。Apacheに読み込まれた構成を取得するには、Webページでphpinfo()を実行する必要があります。
ディプラージ


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.