1

設定

nginx 1.2.2 と PHP 5.4.4 をインストールしました。FastCGIとして実行されているnginxでPHPを構成しました。

nginx 構成スニペット:

location ~ \.php$ {
    root           E:/Websites/localhost;
    fastcgi_pass   127.0.0.1:9000;
    fastcgi_index  index.php;
    fastcgi_param  SCRIPT_FILENAME  E:/Websites/localhost/$fastcgi_script_name;
    include        fastcgi_params;
}

同じシステムで多数のローカル仮想サイトを実行しています。それぞれの要件をカスタマイズするために、各サイトのルート フォルダーに .user.ini ファイルを作成しました。これは、PHP ドキュメントに従って、サブ フォルダーにも適用できるはずです。

これは開発環境であり、ライブではないことに注意してください。そのため、多くのことをカスタマイズする柔軟性があります。

問題

ブラウザーからサイトにアクセスすると、サブフォルダーに飛び込まない限り、正常に動作します。.user.ini はサブディレクトリでは機能しないようです-少なくとも私の構成では。

PHP ドキュメント ( http://www.php.net/manual/en/configuration.file.per-user.php ) に従って:

メインの php.ini ファイルに加えて、PHPは、要求された PHP ファイルのディレクトリから現在のドキュメント ルートまで、各ディレクトリ内の INI ファイルをスキャンします。

SOS

nginx で .user.ini を構成した人はいますか - 助けてください。

注: 2009 年に誰かがバグを報告しました: https://bugs.php.net/bug.php?id=50374

詳細情報 (編集)

PHPInfo() は次のように述べています (ルートおよびサブフォルダー内):
* サーバー API: CGI/FastCGI
* user_ini.filename: .user.ini (ローカルおよびマスター)

php_sapi_name() はcgi-fcgiと言う

これらの値は、ルート フォルダーとサブ ディレクトリの phpinfo() に存在します。したがって、PHPInfo() に違いはありません。

CGI/FastCGIとして実行されていることのさらなる確認は、ルート フォルダーがサブ フォルダーではなく.user.iniから構成を取得していることです。

// .user.ini
auto_prepend_file = "E:\Websites\localhost\user.ini.php"

// user.ini.php
<?php
printf('Hi from: %s', __FILE__);
?>

これは実際にはバグである可能性がありますが、この方法で nginx を使用して PHP を構成し、問題に直面していない人がいます。この場合、バージョン番号とプラットフォームを共有してください。

4

2 に答える 2

1

リンク先の PHP ドキュメントを部分的に引用しただけです。とも言いThese files are processed only by the CGI/FastCGI SAPIます。

CGI/FastCGI SAPI ではなく、他の SAPI を使用していると思われます...おそらく PHP-FPM SAPI ですか?

上記からわかるように、FastCGI を実行することは、CGI/FastCGI SAPI を使用することと同等ではありません。PHP-FPM などの他の SAPI を使用して FastCGI を実行することもできます。

ところで SAPI = サーバー API。phpinfo ファイルで自分のものを探すことができます。

于 2012-07-07T06:21:38.510 に答える
0

これは実際にはnginxよりもはるかに大きな問題ですが、永続的な解決策が利用可能です. ディレクティブ オプションを追加する別の ini_set メソッドには重大な制限があるため、長期的には適切な解決策ではありません。ありがとう。 http://www.ait-pro.com/aitpro-blog/4349/misc-projects/wordpress-tips-tricks-fixes/php5-3-x-php5-4-x-user-ini-file-does- not-work-known-php5-3-x-user-ini-fastcgi-wordpress-zend-issue/

于 2012-08-11T20:14:54.830 に答える