PHP 環境をインストールしてから長い間、LNMP 環境を手動で設定していなかったので、今日は頭が痛くなりました。
しかし、時間が経つにつれて、yum ソース内のライブラリが直接使用できるようになり、nginx および php 環境を構成するときに、ソース コードをコンパイルする必要もなくなりました。ソースを追加したら、次のコマンドを使用してインストールを直接完了できます:
yum install -y nginx php php-fpm
システムが yum を使用して php をインストールしている場合。
yum remove httpd* php*
インストール後、php-fpm に必要な最終作業を完了するために設定ファイルを少し変更する必要があります。権限を変更するには:
vi /etc/php-fpm.d/www.conf
Unix ユーザー/プロセスのグループを OS に対応する設定に変更します。例:
user = www group = www
次に、nginx に対応する PHP 設定項目を有効にする必要があります:
vi /etc/nginx/conf.d/default.conf
次の構成を有効にします:
location ~ \.php$ { include /etc/nginx/fastcgi_params; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; }
すべての準備ができたら、対応するサービスを個別に開始できます:
/etc/init.d/php-fpm restart /etc/init.d/nginx restart
この時点でローカル nginx サービスにアクセスし、「ファイルが見つかりません」エラー メッセージが表示された場合、その理由はおそらく次のとおりです。 fpm プロセスは、SCRIPT_FILENAME によって実行されるように構成された .php ファイルを見つけることができません。
nginx はデフォルトでルート パラメーターをその場所内に配置するため、対応する設定ファイル ディレクトリが正しいかどうかに注意する必要があります。または、ルート パラメーターをその場所からサーバーに移動することをお勧めします。すべてのサブロケーションで統一された Web ルートが使用されるようにします。
さらに、一部の php cms システムのデフォルトの動作を回避するには、index.php をインデックス パラメーターに追加して、システムのデフォルトのホームページ一致仕様に適応させ、不要なトラブルを回避することをお勧めします。