Webホスティング環境でPHP FastCGISAPIを使用してPHPアプリケーションを実行しています。FCGIプロセスを生成するには、 spawn-fcgi ヘルパープログラム。私の問題は、php.iniファイルに変更を加えるたびに、新しい構成を有効にするために、各FastCGIサーバーを強制終了して再生成する必要があることです。
各FastCGIサーバーを再生成せずにPHP構成(つまりphp.iniディレクティブ)をリロードする方法はありますか?ハングアップ信号を送信してみます(つまりkill -HUP PHPCGIPID
)サーバーに送信しますが、これによりサーバーが終了します。
私の知る限り、PHPのFastCGIインタープリターは、HUP
、USR1
、USR2
などのシグナルに反応して構成を再読み込みしません。
多分 PHP-FPM あなたが望むものを達成するのを助けるかもしれません。欠点は、PHPにパッチを適用する必要があることです。
PHP5を使用している場合は、これを試してください
Sudo /etc/init.d/php5-fpm reload
さもないと
Sudo /etc/init.d/php-fpm reload
このコマンドは、既存の接続を閉じずにサーバーを正常に再起動します。
サーバーが自動的に生成される場合は、サーバーを強制終了します。手動で起動した場合は、再起動してください。 PHPには、独自の構成をリロードする機能がありません。通常、強制終了/再起動は問題ありません。この場合、強制終了できない理由はありますか?