php-fpm.conf・とは?初心者でもわかる設定ファイルの基本ガイド共起語・同意語・対義語も併せて解説!

  • このエントリーをはてなブックマークに追加
php-fpm.conf・とは?初心者でもわかる設定ファイルの基本ガイド共起語・同意語・対義語も併せて解説!
この記事を書いた人

高岡智則

年齢:33歳 性別:男性 職業:Webディレクター(兼ライティング・SNS運用担当) 居住地:東京都杉並区・永福町の1LDKマンション 出身地:神奈川県川崎市 身長:176cm 体系:細身〜普通(最近ちょっとお腹が気になる) 血液型:A型 誕生日:1992年11月20日 最終学歴:明治大学・情報コミュニケーション学部卒 通勤:京王井の頭線で渋谷まで(通勤20分) 家族構成:一人暮らし、実家には両親と2歳下の妹 恋愛事情:独身。彼女は2年いない(本人は「忙しいだけ」と言い張る)


php-fpm.conf・とは?

php-fpm.confは、PHPを高速に実行する仕組みである PHP-FPM のグローバル設定を行うための主要な設定ファイルです。PHP-FPMはウェブサーバーと連携してPHPの処理を担当しますが、その挙動をどう制御するかはこのファイルで決まります。ファイルの場所はOSやディストリビューションによって異なります。例えば、Debian系では /etc/php/*/fpm/php-fpm.conf のような場所に置かれ、RHEL系や CentOS 系では /etc/php-fpm.conf や /etc/php-fpm.d/ 配下に配置されていることが多いです。ディストリビューションごとに少しずつ書き方が異なる点に注意しましょう。

まず覚えておきたいのは、php-fpm.confは「グローバル設定」を担当するファイルであり、個々の「プール設定」は別ファイルに分かれているという点です。プール設定とは、実際にどのウェブアプリをどのような条件で実行するかを決める設定で、代表的なファイル名は www.conf のような名前が付くことが多いです。この分離により、複数のアプリやサイトを1つの PHP-FPM インスタンスで安全かつ効率的に動かすことができます。

php-fpm.confの主な役割と構成

このファイルには、以下のような「グローバルな」設定が含まれることが多いです。

  • include:プール設定ファイルの読み込みパスを指定します。例えば /etc/php-fpm.d/*.conf のように、複数のプール設定を読み込むことができます。
  • pid:マスタープロセスの PID ファイルの場所を指定します。
  • error_log:エラーログの出力先を指定します。
  • log_level:ログの詳細度を決めます。一般的には noticeerrordebugなどを選択します。
  • daemonize:バックグラウンドで動作するかどうかを決めます。systemd 環境では通常 no にします。
  • その他、emergency_restart_intervalrlimit_files など、サーバーの信頼性や資源制限に関する設定が含まれる場合があります。

これらの設定は、サーバーの仕様や運用ポリシーによって変わります。実際の環境で編集する際は、まず現在の設定をバックアップし、変更前後の挙動を確認しましょう。

実務の流れと設定の検証

php-fpm.confを編集する一般的な手順は次のとおりです。

  1. 現在の設定ファイルのバックアップを作成する。
  2. テキストエディタで php-fpm.conf を開き、必要な変更を加える。
  3. 設定ファイルの文法を検証する。多くの環境では php-fpm -tphp-fpm -t -y /path/to/php-fpm.conf のコマンドでエラーをチェックします。
  4. エラーがなければ、サービスを再起動またはリロードします。典型的には systemctl reload php-fpm または systemctl restart php-fpm を実行します。
  5. 実際の挙動をログで確認します。エラーログに異常がないか、想定どおりにリクエストが処理されているかを確認します。

以下の表は、代表的なグローバルディレクティブとその意味を簡潔に整理したものです。

<th>ディレクティブ
説明
include プール設定ファイルの読み込みパス。複数ファイルをまとめて読み込むことが多い。
pid マスタープロセスの PID ファイルの場所を指定する。
error_log エラーログの出力先を指定する。
log_level ログの詳細度を設定する。例: error、notice、debug。
daemonize バックグラウンド実行の設定。systemd 環境では usually <span>no。
emergency_restart_interval マスターが過剰なエラー連発時の緊急再起動間隔を制御する。

プール設定との関係

グローバル設定だけでなく、実際の処理を担う「プール設定」も重要です。プール設定ファイルには、[プール名] の下に listen(接続先)、usergrouppm(プロセスマネージャの設定)、max_children など、各サイトやアプリごとの条件が書かれます。php-fpm.conf はこれらプール設定ファイルを読み込む役割を持つため、両方を適切に管理することが安定した運用の鍵です。

よくあるトラブルと対処のヒント

設定を変更した後に起きやすいトラブルと対処法をいくつか挙げます。

  • エラーがログに連なる: log_level を適切なレベルに設定して原因を特定します。設定ミスやパスの間違いが多いです。
  • リクエストが遅い/タイムアウト: プール設定の pm 関連(min, max, start)、および listen の設定を見直します。
  • コード変更後に反映されない: systemctl reload php-fpm でリロードしたかを確認します。再起動を選ぶ場合は影響範囲を考慮します。

まとめとおすすめの実践ポイント

php-fpm.confは PHP-FPM の肝となるグローバル設定ファイルです。適切に設定することで、複数のウェブサイトを安定して処理でき、問題が起きたときも迅速に原因を特定できます。新しい環境で運用を始める際は、まずバックアップを取り、推奨設定のデフォルトを理解した上で、必要に応じて少しずつ変更していくとよいでしょう。さらに、プール設定と合わせて監視を行えば、サーバーの性能と信頼性を高められます。


php-fpm.confの同意語

php-fpm.conf
PHP-FPM の設定ファイル。PHP-FPM の挙動を決定する設定を格納している標準的なファイル名。
PHP-FPM の設定ファイル
php-fpm.conf と同じ意味を日本語で表現した表現。PHP-FPM の設定を格納するファイルを指す。
php-fpm設定ファイル
php-fpm.conf の日本語表現の一つ。設定ファイルを指す表現。
PHP-FPM.conf
大文字表記のファイル名の略称表現。実際のファイル名として使われる場合があるが、環境により異なることがある。
php-fpm.conf ファイル
php-fpm.conf という設定ファイルを指す言い方。ファイル名を強調する表現。
PHP-FPM コンフィグファイル
英語の Config をカタカナ表現にしたもの。PHP-FPM の設定ファイルを指す別称。
PHP-FPM 設定ファイル
PHP-FPM の設定内容を格納するファイルを指す一般表現。
php-fpm設定
設定そのものを指す略称表現。文脈次第でファイルを指すこともある。
PHP-FPM の設定
設定内容を指す広義の表現。ファイルを指す場合もある。

php-fpm.confの対義語・反対語

実行ファイル
PHP-FPMを起動・実行するためのバイナリファイル。設定ファイルである php-fpm.conf の対極にある概念です。
デフォルト設定
php-fpm.conf で別に設定する前の初期値・挙動。設定ファイルを使う場合の対比として使える概念です。
無設定ファイル
設定を全く持たない状態。デフォルト値のみで動作する前提の状態を指します。
動的設定
動的に反映される設定。ファイルベースの静的設定とは反対の運用方法です。
環境変数による設定
設定をファイルに書かず、環境変数でオーバーライドする方法。ファイルベースの設定の代替として挙げられます。
コード内設定
設定をソースコード内に直接ハードコーディングする方法。ファイル外部の設定と対比となる使い方です。
php.ini
PHPの別設定ファイル。PHP-FPMの設定ファイルとは別の設定層を指す対比として挙げられます。
ウェブサーバーの設定ファイル
nginx.conf や httpd.conf のように、ウェブサーバー側の設定ファイル。PHP-FPMの設定ファイルとは別カテゴリの対比です。

php-fpm.confの共起語

php-fpm.conf
PHP-FPM のグローバル設定ファイル。デーモンの動作、ログ出力、ソケットの設定、プロセス管理などの基本設定を行います。
include
追加の設定ファイルを読み込む指示。/etc/php-fpm.d/*.conf などを参照して設定を拡張します。
daemonize
バックグラウンドで実行するかどうかを決定します。on ならデーモンとして動作します。
pid
メインプロセスの PID ファイルの保存場所を指定します。
error_log
エラーログの出力先ファイルを指定します。問題発生時のトラブルシューティングに使います。
log_level
ログ出力の詳細度を設定します。例: notice、warning、error、debug など。
listen
接続先のアドレスまたはソケットを指定します。例: 127.0.0.1:9000 や /var/run/php-fpm.sock。
listen.owner
ソケットファイルの所有者を設定します。
listen.group
ソケットファイルのグループを設定します。
listen.mode
ソケットファイルの権限(パーミッション)を設定します。
user
プールの実行ユーザーを指定します(例: www-data、nginx など)。
group
プールの実行グループを指定します。
chdir
プールの作業ディレクトリを設定します。基本的にはウェブアプリのルートに近い場所。
pm
プロセス管理モードを設定します。static、dynamic、ondemand のいずれかを選択します。
pm.max_children
同時に動作できる子プロセスの上限を指定します。
pm.start_servers
起動時に作成される子プロセスの初期数を設定します。
pm.min_spare_servers
動的モード時の最小アイドル子プロセス数を設定します。
pm.max_spare_servers
動的モード時の最大アイドル子プロセス数を設定します。
pm.max_requests
各子プロセスが処理するリクエストの上限。超えると再起動することがあります。
pm.status_path
ステータスページのパスを設定して、監視用の情報を取得できるようにします。
request_terminate_timeout
リクエストの最大実行時間を制限します。超過すると子プロセスが終了します。
request_slowlog_timeout
スローとみなすリクエストの閾値を設定します。
slowlog
遅いリクエストのログ出力先ファイルを指定します。
rlimit_files
開くことができるファイル数の上限を設定します。
rlimit_core
コアダンプの生成に関するリミットを設定します。
catch_workers_output
子プロセスの標準出力/標準エラーをログにキャプチャするかどうかを設定します。
clear_env
起動時に環境変数をクリアするかどうかを設定します。
env
PHP-FPM に渡す環境変数を設定します(例: env[VAR]=value)。
www.conf
デフォルトのプール設定ファイル。実運用では www という名前のプールを使うことが多いです。
pool.d
プール設定ファイルを格納するディレクトリ。複数のプールを分離して管理します。
pool
PHP-FPM の処理グループを指します。例: www、api など、用途ごとに分けて設定します。

php-fpm.confの関連用語

PHP-FPM
PHP FastCGI Process Manager。PHPアプリをFastCGIとして実行・管理するサーバーの仕組みです。
php-fpm.conf
PHP-FPMのグローバル設定ファイル。全体の挙動とデフォルト値を決定します。
php-fpm.d
プールの設定ファイルを格納するディレクトリ。includeディレクティブで読み込まれます。
www.conf
実際のプール設定ファイルの代表例。通常はwww.confという名前で配置されます。
プール (pool)
PHP-FPM内の処理グループ。サイトやアプリごとに独立した設定を持ち、同じFPMデーモン内で複数作成できます。
listen
プールが待ち受けるアドレス。UnixソケットまたはTCP/IPで接続を受け付けます。
listen.owner
Unixソケットの所有者を設定します。
listen.group
Unixソケットの所属グループを設定します。
listen.mode
Unixソケットのファイル権限を設定します。
listen.backlog
TCP接続のバックログ(待ち行列)最大数を設定します。
listen.allowed_clients
TCPリスン時に許可するクライアントのIPを制限します。
user
PHP-FPMの実行ユーザー。セキュリティのために分離します。
group
PHP-FPMの実行グループ。
chroot
プールごとにルートディレクトリを制限するchroot設定。
pm
プロセスマネージャの動作モード。dynamic/static/ondemand のいずれかを選択します。
pm.max_children
同時に生成できる子プロセスの上限。
pm.start_servers
動的モード時に起動時に用意する子プロセス数。
pm.min_spare_servers
動的モード時の最小予備プロセス数。
pm.max_spare_servers
動的モード時の最大予備プロセス数。
pm.max_requests
各子プロセスが再生成される前に処理するリクエストの最大数。
request_terminate_timeout
1リクエストあたりの最大実行時間(秒)。
request_slowlog_timeout
スロー(遅い)リクエストをログ出力する閾値(秒)。
slowlog
遅いリクエストを記録するファイルのパス。
catch_workers_output
子プロセスの標準出力をFPMのエラーログに取り込む設定。
rlimit_files
各子プロセスが開くファイル数の上限(ulimit)。
rlimit_core
コアダンプサイズの上限。
security.limit_extensions
実行可能なファイル拡張子を制限してセキュリティを強化します。
php_admin_value
このプールで優先的に適用する PHP 設定値を上書きします。
php_admin_flag
このプールで優先的に適用する PHP フラグを上書きします。
php_value
旧式の方法で PHP 設定値を上きします(新規は php_admin_value を推奨)。
php_flag
旧式の方法で PHP フラグを上書きします(新規は php_admin_flag を推奨)。
env
環境変数をこのプールの PHP プロセスに渡します。
env[NAME]
NAME という環境変数を PHP に渡します(環境変数の個別指定)。
clear_env
環境変数をクリアしてセキュリティと安定性を高めます。
pm.status_path
プールの状態を表示するステータスページのパスを設定します(例: /status)。
ping.path
ヘルスチェック用のエンドポイントパスを設定します(負荷分散の生存確認などに使います)。
include
他の設定ファイルを読み込む指令。複数ファイルを組み合わせて使います。
daemonize
バックグラウンドで動作するかを設定します(通常は yes)。
error_log
エラーログの出力先ファイルパス
log_level
ログの詳細度を設定します(例: notice、warning、error 等)。
pid
PHP-FPM のデーモンプロセスIDファイルの場所を指定します。

php-fpm.confのおすすめ参考サイト


インターネット・コンピュータの人気記事

awstatsとは?初心者でもわかる使い方と基本解説共起語・同意語・対義語も併せて解説!
15632viws
bing・とは?初心者のための基本ガイド:検索エンジンの仕組みと使い方共起語・同意語・対義語も併せて解説!
2500viws
着信転送とは?初心者向けガイドで分かる使い方と設定のコツ共起語・同意語・対義語も併せて解説!
1120viws
差し込み印刷・とは?初心者でもすぐわかる使い方と仕組みガイド共起語・同意語・対義語も併せて解説!
1096viws
com端子・とは?初心者にも分かる基礎ガイド|シリアルポートの使い方と歴史を解説共起語・同意語・対義語も併せて解説!
989viws
充電アダプターとは何かを徹底解説|初心者でも分かる基本と選び方のコツ共起語・同意語・対義語も併せて解説!
941viws
7zファイル・とは?初心者でもわかる使い方と特徴を解説共起語・同意語・対義語も併せて解説!
903viws
全角文字とは?初心者向け解説|全角と半角の違いをやさしく学ぶ共起語・同意語・対義語も併せて解説!
894viws
リマインドメールとは?初心者にもわかる基本ガイドと使い方のコツ共起語・同意語・対義語も併せて解説!
830viws
pinロックとは?初心者が知っておくべき基本と使い方ガイド共起語・同意語・対義語も併せて解説!
829viws
none とは?初心者にもやさしく解説する意味と使い方ガイド共起語・同意語・対義語も併せて解説!
759viws
16進数カラーコード・とは?初心者でもつまずかない基礎と使い方ガイド共起語・同意語・対義語も併せて解説!
751viws
ローカルポート・とは?初心者にも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
651viws
xlsmとは?初心者でも分かるExcelのマクロ付きファイルの基本共起語・同意語・対義語も併せて解説!
648viws
asp・とは?初心者向けに徹底解説する基本と使い方ガイド共起語・同意語・対義語も併せて解説!
645viws
countifとは?初心者でもすぐ使える基本と応用ガイド共起語・同意語・対義語も併せて解説!
578viws
ワンタイムコード・とは?初心者でも分かる基本と使い方ガイド共起語・同意語・対義語も併せて解説!
564viws
sha256とは?初心者が知るべき暗号ハッシュの基礎と使い道共起語・同意語・対義語も併せて解説!
553viws
csvダウンロードとは?初心者が今すぐ使える基本ガイド共起語・同意語・対義語も併せて解説!
543viws
googleドキュメントとは?初心者が今日から使いこなす基本ガイド共起語・同意語・対義語も併せて解説!
502viws

新着記事

インターネット・コンピュータの関連記事