ホームページ >バックエンド開発 >PHPチュートリアル >1.5-php-fpm設定ファイル
/usr/local/php/etc/php-fpm.conf は php サービスの設定です
/usr/local/php/etc/php.ini は php ソフトウェアのグローバル設定です。例: クロック。
> を挿入します。 .conf ファイルをクリアします
vim /usr/local/php /etc/php-fpm.conf 実際、コメントを削除した後は次のコードになります
[global]
pid = /usr/local/php /var/run/php-fpm.pid
error_log = /usr/ local/php/var/log/php-fpm.log
[www]
listen = /tmp/php-fcgi.sock リスニングメソッド通常は sockte で、カスタマイズおよび自動生成できます
user = php-fpm
group = php-fpm
pm = Dynamic、次のコードを管理します
pm.max_children = 50 最大 50 個の子プロセス
午後.start_servers = 20 20 プロセス
pm.min_spare_servers = 5 最小子プロセス 5
pm.max _spare_servers = 35 最大 35 の子プロセス
pm.max_requests = 500 子プロセスは合計を処理しますライフサイクル中に 500 件のリクエストを処理します。自動的に破棄されます
rlimit_files = 1024 各プロセスには使用するファイル記述子の制限があり、それが大きいかどうかは関係ありません
slowlog = /tmp/www_slow.log Web サイトを追跡し、Web サイトの遅いログを確認します
request_slowlog_timeout = 1 スクリプトのタイムアウトは1秒、前のパスのslow.logに記録されます
php_admin_value[open_basedir]=/data/www/:/tmp/ PHPが権限を持つディレクトリを指定します
コードは2つに分かれていますParts
1.global グローバル設定、主に PID とエラー ログ
2.www はサービス用に設定されます。
設定で pm = static の場合、pm.max_children = 50 のみが有効になります。起動時のプロセス数は 50 となり、その他は無効になります。
最初に 20 個のプールが開始され、最小値が 5 個になるまで 1 つずつ破棄されます。
複数のプールの構成 異なるドメイン名が異なるプールに対応します。 2 つの利点があります。1. 異なる Web サイトに異なる権限を与えることができます。2. 1 つの Web サイトがハングしても、他のプール Web サイトには影響しません。
[グローバル]
pid = /usr/local/php/var/run/php-fpm.pid
error_log = /usr/local/php/var/log/php-fpm.log
[www] EnListen = /TMP/www.sock
ユーザー = PHP-FPM
グループ = PHP-FPM
pm = 動的
Pm.max_children = 50
Pm.start_Servers = 20vers = 5
pm.max_スペアサーバー= 35
pm.max_requests = 500
rlimit_files = 1024
slowlog = /tmp/www_slow.log
request_slowlog_timeout = 1
[www1] 1 を変更
聞く = /tmp/www1 . sock 変更 2
user = php-fpm
group = php-fpm
pm = Dynamic
pm.max_children = 50
pm.start_servers = 20
pm.min_spare_servers = 5
pm.max_ sp are_servers = 35
pm.max_requests = 500
rlimit_files = 1024
slowlog = /tmp/www1_slow.log
request_slowlog_timeout = 1
その後のQ&A:
2 php-fmp の php_admin_value[open_basedir] =/data/www/ と nginx の仮想ホスト設定ファイル root /data/aaa これら 2 つが同時に設定された場合、どのディレクトリが有効になりますか?
回答: 1. どちらの listen メソッドも似ていますが、私の意見では、ソケットのパフォーマンスが ip:port よりも効率的であると考える人もいます。
2. nginx は Web サイトのルート ディレクトリのみを構成し、php の open_basedir は php に制限されます。このように設定すると、Web サイトはまったく実行できないことがわかります。
2: php-fpm は複数のプールを設定しています。プールごとに異なるユーザーを指定する必要がある場合、ユーザーは php がコンパイルおよびインストールされるときにここにあります - fpm-user=php でバインドする方法。 fpm 複数のユーザーについてはどうですか?
回答: 上記はデフォルトですが、構成ファイルで追加のユーザーを定義することもできます。
3: ソケットとは何か理解できません
回答: これは、tcp/ip 通信メカニズムに似た、通信に使用されるファイルです。この種のファイルは、unix/linux システムに固有です。 mysql データ通信と同様に、ソケット ファイル通信を使用できます。