通常の Nginx と php5-fpm の組み合わせで実行されている PHP ベースのサイトがあります。サイト利用可能な構成には、メインの www.mysite.com 用と blog.mysite.com サブドメイン用など、いくつかの異なるサーバー ブロックがあります。最初にサイトを作成したときauto_prepend_file
、php.ini (/etc/php5/fpm/ 内) に PHP 値を設定して、'common.php' と呼びましょう。ただし、ブログのサブドメインに common.php を含めたくないので、auto_prepend_file を php.ini から削除し、www サブドメインで利用可能なサイトに追加しました。
fastcgi_param PHP_VALUE "auto_prepend_file=/var/www/mysite/app/lib/common.lib.php";
そこにはあまりにも派手なものはありません。ただし、nginx と php5-fpm の両方を再起動したにもかかわらず、一般的には nginx と php5-fpm を再起動し、ページをリロードしてから再度リロードした後、common.php が含まれていることが時々見られます。つまり、最初のリロードでは問題ありません。
ファイルがインクルードされているときに phpinfo() を実行すると、PHP が正しい php.ini ファイル (つまり、削除したファイル) をロードしたことがわかりますauto_prepend_file
が、auto_prepend_file
値はまだ common.php に設定されています!
他に再起動する必要があるものはありますか? auto_prepend_file
/etc/php5/fpm/php.ini 以外の場所を探す必要がありますか? ありがとう