nginxとPHP-FPMの連携:動的コンテンツの配信

2024/07/22

nginxとは何か?

nginx(エンジンエックス)は、高速なWebサーバーとして知られています。多くのリクエストを同時に処理できる能力があり、特に静的コンテンツの配信に優れています。静的コンテンツとは、画像やCSSファイルのように変わらないファイルのことを指します。しかし、動的コンテンツを配信するためにはどうするのでしょうか?そこで登場するのがPHP-FPMです。

PHP-FPMとは?

PHP-FPM(PHP FastCGI Process Manager)は、PHPを実行するためのプログラムです。Webページがユーザーのリクエストに応じて内容を変える場合、PHPがその処理を担います。PHP-FPMは、複数のPHPプロセスを効率よく管理し、高速で安定した動的コンテンツの配信を実現します。

nginxとPHP-FPMの連携方法

それでは、nginxとPHP-FPMを連携させて動的コンテンツを配信する方法を説明します。以下の手順で設定を行います。

1. nginxをインストールする

まず最初に、nginxをインストールします。Linuxベースのシステムでは、以下のコマンドを実行することでインストールできます。

sudo apt-get update
sudo apt-get install nginx

2. PHP-FPMのインストール

次に、PHPとPHP-FPMをインストールします。こちらも、以下のコマンドで実行できます。

sudo apt-get install php php-fpm

3. nginxの設定ファイルを編集する

nginxとPHP-FPMの連携ができるように、nginxの設定ファイルを編集します。設定ファイルは通常 /etc/nginx/sites-available/default にあります。以下のように編集します。

server {
    listen 80;
    server_name your_domain.com;

    root /var/www/html;
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ =404;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
    }
}

4. サーバーの再起動

設定が完了したら、nginxを再起動して設定を反映させます。

sudo systemctl restart nginx

動的コンテンツを確認する

設定が完了後、動的コンテンツを確認するために、PHPのテストファイルを作成します。/var/www/html ディレクトリに info.php というファイルを作り、以下の内容を記述します。

<?php
phpinfo();
?>

ブラウザで http://your_domain.com/info.php にアクセスすると、PHPの情報ページが表示されるはずです。これでnginxとPHP-FPMの連携が成功していることが確認できました。

まとめ

nginxとPHP-FPMの連携は、動的コンテンツを効率よく配信するための強力な手法です。まずは基本的なインストールと設定を行い、自分のサイトで試してみることをお勧めします。

この記事はAIを使用して作成されています。