この記事の内容は、nginx で php-fpm を起動する際のエラーの原因と解決策を共有することです。必要な友人は参考にしてください。背景
今日のサーバーは 502 エラーを数回報告しました。これは、記述されたスクリプトが多すぎる、使用されているサードパーティのプラグイン、応答のタイムアウトなどの一連の問題が原因である可能性があります。ここで多くの php-fpm エラーが発生しました。それを記録しなさい。 2. エラー メッセージ
1. ZEND_INI_PARSER_ENTRY の値が NULL です
原因:php-fpm を再起動すると、システムから「systemctl status php5-fpm.service」と入力する必要があります。 「エラーメッセージを確認してください。
ERROR: [/usr/local/php5/etc/php-fpm.conf:144] value is NULL for a ZEND_INI_PARSER_ENTRY
解決策:
このエラーが発生する理由は、php-fpm.conf ファイルを記述する際に、規格が不十分であったり、間違った記述が原因である可能性があります。ここで、エラーの原因となった行を確認できます:
//看好这个144,这就是你报错的地方 ERROR: [/usr/local/php5/etc/php-fpm.conf:144]
エラー メッセージを変更するだけです。
2. pm.start_servers(3) は pm.min_spare_servers(1) 未満であってはならず、pm.max_spare_servers(1) を超えてはなりません 原因:このエラーについては、php を参照してください。公式ドキュメント
ファイルの設定時に一部のパラメーターのサイズが無視されました。解決策:
pm.max_children int pm 设置为 static 时表示创建的子进程的数量,pm 设置为 dynamic 时表示最大可创建的子进程的数量。必须设置。 该选项设置可以同时提供服务的请求数限制。类似 Apache 的 mpm_prefork 中 MaxClients 的设置和 普通PHP FastCGI中的 PHP_FCGI_CHILDREN 环境变量。 pm.start_servers in设置启动时创建的子进程数目。仅在 pm 设置为 dynamic 时使用。默认值:min_spare_servers + (max_spare_servers - min_spare_servers) / 2。 pm.min_spare_servers int 设置空闲服务进程的最低数目。仅在 pm 设置为 dynamic 时使用。必须设置。 pm.max_spare_servers int 设置空闲服务进程的最大数目。仅在 pm 设置为 dynamic 时使用。必须设置。
min_spare_servers ≤ start_servers ≤ max_spare_servers ≤ max_children
3. php-fpm 起動時のエラー: ユーザー 'www_data' の uid を取得できません
原因:このエラーは起動ユーザーのせいです。設定ファイルのデフォルトはユーザー「www_data」ですが、これは現在のユーザーで開始する必要があることを意味します。現在「pzsh」ユーザーを使用しているので、それを変更するだけで済みます。
解決策:
1. php-fpm.conf ファイルを入力します2. user = www-data を見つけて次のように変更します
対応するユーザー グループ グループも次のように変更されます上記は、最近php-fpmを再起動するときに問題が発生したものです。実際、サーバーから多くのエラー メッセージが表示されますが、必要なのは英語を理解することだけです。
終了以上がnginx で php-fpm を起動するときにエラーが発生する理由と解決策の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。