Nginx+php fastcgi アクセスが拒否されました
2014-06-10 18:10 4901 人が読んだコメント (0)収集レポート
原因分析:
PHP 5.3.9 以降、設定「security.limit_extensions」(/usr/local/php/etc/php-fpm.conf) が正式に追加されました。デフォルトでは、拡張子が「.php」のファイルのみが実行可能です。他の種類のファイルがサポートされないという問題が発生しました。
リクエストしたアドレスが css js png のようなリソースである場合、http://localhost/user (http://localhost/user/index.php を意味します) をリクエストすると、php によって拒否されます。働きません。
解決策
1. php設定ファイルを変更して、security.limit_extensi .html .js .css .jpg .jpeg .gif .png .htm#
などの許可された拡張子を追加する人もいますが、これは実際には静的であるため悪いですリソースは php fast-cgi
2 で処理すべきではありません。(推奨) nginx の rewrite
location ~ .(js|css|gif|jpg|jpeg|png)$ {
root D :/tmp}
を使用してください。場所〜$ {root html; ; $1/index.php;
}
これにより、最初の場所フィルター タイプでは十分ではない可能性があります。必要に応じて追加できます
上記では、関連するコンテンツも含めて、Nginx+php fastcgi でのアクセス拒否を紹介しました。PHP チュートリアルに興味のある友人に役立つことを願っています。