2011-07-17 2 views
3

私は多くの検索をしましたが、答えが見つかりませんでした。nginx phpでの一時的な値(ローカル値)FPM

私はPHP FPMのプールの多くを持っているではないだろう、私はそれがmod_phpのようになりたい、とnginxの中で私が書いた:それは作品

fastcgi_param PHP_VALUE "open_basedir = /var/xxx/"; 

を、それはentiere生活のためにopen_basedirの宣言プロセスの魔女のPHPスクリプトを実行している(私はテストを行っている)。 phpinfo()には、open_basedirの値(this)がローカル値とマスター値の両方に表示されます。

サーバー {}が変更 open_basedirまたは他の値(ない多くのことを再定義していない場合、私はセキュリティのため PHP_VALUEデフォルト値を持つ fastcgi_paramファイルは、例えば(それは確かに行くことはありませんが、それはセキュリティのプリンシペだ)と思う

)。私はこの決定的なオーバーライドが嫌いです、それは危険です、私は沈む。

fastcgi_paramは常に一時的なFPMを宣言する方法を知っていますか? Apacheのようにphp_admin_value ... !!!

答えは見つかりませんでしたが、存在しないのはあまりにも愚かです!

+0

申し訳ありませんが引用機能を使用しています。 Francois Deschenesに感謝します。 – RelTive

+0

fastcgi.confをnginx.confの場所の上に含めると、fastcgi_paramを再定義できます。そして、上記の両方のfastcgi_pass。 – Oroboros102

答えて

2

あなたのテストは正しいです。設定されたphp_valueは、新しい値に設定されるまでfastcgiプロセスで永続的です。これは、他の仮想ホストの要件を妨げる可能性があります。

phpの背後にある考え方は、異なるphpの値/ ini設定に異なるプールを使用することです:異なる仮想ホスト& php環境設定。したがって、おそらくあなたの異なる仮想ホストに新しいphp-fpmプールを定義する必要があります。

新しいプールを定義したくない場合は、他の仮想ホストに設定されているすべてのphp_valueパラメータを上書きする必要があります。それはエラーになりやすいです!

関連する問題