GNU/Linux >> Linux の 問題 >  >> Linux

PHP-FPM を使用して PHP を実行するように Nginx を構成する方法

Nginx は「Engine-X」と発音され、Web サーバーおよびリバース プロキシ サーバーです。 Nginx は、リソースを最適に使用して多数のリクエストを同時に処理する速度と能力でよく知られています。

PHP-FPM は「PHP-FastCGI プロセス マネージャー」の略です。 CGI は、Web サーバーと動的コンテンツ提供プログラムの間のインターフェースとして機能するようにスクリプト化された共通ゲートウェイ インターフェースを指します。 Web サーバー自体と同じようにポートをリッスンし、PHP と Web サーバーの間でリクエストを渡します。

このチュートリアルでは、Nginx で PHP プログラムを実行するのに役立つ、PHP-FPM を使用して Nginx をインストールおよび構成する方法について説明します。

前述の Apache と Nginx で説明したように、Nginx と比較すると、Apache重い負荷を処理し、多数のリクエストを処理している間は比較的遅くなります。

1. Nginx をインストール

ソースから Nginx をインストールするか、ディストリビューションに付属のパッケージ管理ツールを使用してインストールできます。

たとえば、Ubuntu では、以下に示すように apt-get を使用して nginx をインストールできます。

$ sudo apt-get install nginx

以下に示すように、nginx サーバーを起動します。

$ sudo service nginx start

http://{your-ip-address} にアクセスして、Nginx のウェルカム ページが表示されていることを確認してください。

2. PHP5-FPM をインストール

次に、ディストリビューションに付属のパッケージ管理ツールを使用して php5-fpm をインストールします。

たとえば、Ubuntu では、以下に示すように apt-get を使用して php5-fpm をインストールできます。

$ sudo apt-get install php5-fpm

3. Nginx に PHP 構成を追加

次に、/etc/nginx/sites-available/default ファイルを変更し、次の行を追加します。

$ sudo vi /etc/nginx/sites-available/default
server {
  listen   80;
  root /usr/share/nginx/www;
  index index.php index.html index.htm;
  server_name example.com;
  location / {
    try_files $uri $uri/ /index.html;
  }
  error_page 404 /404.html;
  error_page 500 502 503 504 /50x.html;
  location = /50x.html {
    root /usr/share/nginx/www;
  }
  # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
  location ~ \.php$ {
    try_files $uri =404;
    fastcgi_pass unix:/var/run/php5-fpm.sock;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    include fastcgi_params;
  }
}

4. php5-fpm www.conf でリッスン パラメータを設定

次に、php-frpm 構成で次の変更を行う必要があります。

デフォルトでは、www.conf ファイルに次のリッスン エントリが表示されます

$ sudo vi  /etc/php5/fpm/pool.d/www.conf
listen =  127.0.0.1:9000

www.conf ファイルでは、すべてをそのままにして、上記のリッスン行を以下に示す行に置き換えます。

$ sudo vi  /etc/php5/fpm/pool.d/www.conf
listen = /var/run/php5-fpm.sock

5. Nginx と PHP5-FPM を再起動してテストします

以下に示すように、php5-fpm と nginx を再起動します

$ sudo service nginx restart

$ sudo service php5-fpm restart

最後に、nginx ドキュメント ルートに次の index.php ファイルを作成し、テストします。

$ sudo vi /usr/share/nginx/www
<?php
  phpinfo( );
?>

最後に、ブラウザを開いて http://localhost/index.php に移動します (または IP アドレスを使用します)。これにより、index.php ファイルが実行され、php 情報が表示されます。


Linux
  1. NginxでオリジンCloudflareSSLを設定する方法

  2. Nginxを使用してURLをリダイレクトする方法

  3. nginxの背後でKibana 4とelasticsearchを構成するには?

  1. PHP-FPMを介してPHPで動作するようにNginxを構成する方法

  2. nginx がポート 80 を使用しないようにする方法

  3. NginX + PHP-FPM で空白の php ページが表示される

  1. LinuxMint 18 /LinuxMint17にNginx+PHP5-FPM+MySQLをインストールする方法

  2. Nginx/Apacheを使用してWordPressでXML-RPCをブロックする方法

  3. Debian10にPHP-FPMを使用してNginxをインストールする方法