LEMPスタック · 2 min read · Jan 05, 2026

Debian 11にLEMPスタック(Nginx、PHP、MariaDB)をインストールする

LEMPスタックは、インターネット上でWebアプリケーションをホストするために使用されるオープンソースのソフトウェアおよびフレームワークまたはライブラリのセットです。スタックは、Linuxオペレーティングシステム、Nginx Webサーバー、MariaDB/MySQLデータベースサーバー、およびPHP言語で構成されています。LEMPは良好なコミュニティサポートがあり、世界中の多くの大規模なWebアプリケーションで使用されています。

この記事では、Debian 11にLEMPスタックをインストールする方法を示します。

前提条件

  • Debian 11を実行しているサーバー。
  • サーバーIPにポイントされた有効なドメイン名。
  • サーバーに設定されたrootパスワード。

始めに

始める前に、システムパッケージを最新バージョンに更新することをお勧めします。次のコマンドを使用してすべてのパッケージを更新できます:

apt-get update -y

システムが更新されたら、次のステップに進むことができます。

Nginx Webサーバーのインストール

Nginxは、イベント駆動型アーキテクチャに従い、1つのスレッド内で複数のリクエストを処理できる無料のオープンソースWebサーバーです。一般的に使用されるアプリケーションと互換性があり、静的ファイルの提供に使用されます。

デフォルトでは、NginxパッケージはDebian 11のデフォルトリポジトリに含まれています。次のコマンドを使用してインストールできます:

apt-get install nginx -y

Nginxがインストールされたら、Nginxサービスを開始し、システム再起動時に自動的に開始するように設定します:

systemctl start nginx  
systemctl enable nginx

次のコマンドを使用して、インストールされたNginxのバージョンを確認することもできます:

nginx -v

次の出力が表示されるはずです:

nginx version: nginx/1.18.0

デフォルトでは、Nginxはポート80で実行されます。次のコマンドを使用して確認できます:

ss -antpl | grep nginx

次の出力が表示されるはずです:

LISTEN 0      511          0.0.0.0:80        0.0.0.0:*    users:(("nginx",pid=44342,fd=8),("nginx",pid=44341,fd=8))
LISTEN 0      511             [::]:80           [::]:*    users:(("nginx",pid=44342,fd=9),("nginx",pid=44341,fd=9))

Nginxのインストールを次のURL http://your-server-ip を使用して確認することもできます。次のページにNginxテストページが表示されるはずです:

Nginxウェルカムページ

この時点で、Nginx Webサーバーがインストールされました。次のステップに進むことができます。

MariaDBデータベースサーバーのインストール

MariaDBは、Webサイトのデータを保存および管理するために使用されるオープンソースのSQLベースのデータベースです。デフォルトでは、MariaDBパッケージはDebian 11のデフォルトリポジトリに含まれています。次のコマンドを使用してインストールできます:

apt-get install mariadb-server -y

MariaDBデータベースサーバーがインストールされたら、MariaDBサービスを開始し、システム再起動時に自動的に開始するように設定します:

systemctl start mariadb  
systemctl enable mariadb

次のコマンドを使用して、MariaDBサービスのステータスを確認することもできます:

systemctl status mariadb

次の出力が表示されるはずです:

? mariadb.service - MariaDB 10.3.31データベースサーバー
     Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-08-21 04:13:25 UTC; 1min 36s ago
       Docs: man:mysqld(8)
             https://mariadb.com/kb/en/library/systemd/
   Main PID: 1838 (mysqld)
     Status: "SQLリクエストを受け付けています..."
      Tasks: 31 (limit: 2353)
     Memory: 66.1M
     CGroup: /system.slice/mariadb.service
             ??1838 /usr/sbin/mysqld

MariaDBのインストールを保護し、MariaDBのrootパスワードを設定することをお勧めします。次のコマンドを実行して、MariaDBのインストールを保護することができます:

mysql_secure_installation

MariaDBのrootパスワードを設定し、匿名ユーザーを削除し、リモートからのrootログインを禁止し、テストデータベースを削除するように求められます。次のように表示されます:

Enter current password for root (enter for none): 
Change the root password? [Y/n] Y
New password: 
Re-enter new password: 
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

デフォルトでは、MariaDBはポート3306で実行されます。次のコマンドを使用して確認できます:

ss -antpl | grep mariadb

次のコマンドが表示されるはずです:

LISTEN 0      80         127.0.0.1:3306      0.0.0.0:*    users:(("mariadbd",pid=12181,fd=15))

MariaDBシェルに接続するには、次のコマンドを実行します:

mysql -u root -p

MariaDBのrootパスワードを入力し、Enterを押してMariaDBシェルに接続します。接続されると、次の出力が表示されるはずです:

Enter password: 
MariaDBモニターへようこそ。コマンドは;または\gで終了します。
あなたのMariaDB接続IDは64です
サーバーバージョン: 10.5.11-MariaDB-1 Debian 11

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

'help;'または'\h'を入力してヘルプを表示します。'\c'を入力して現在の入力ステートメントをクリアします。

次に、MariaDBのバージョンを確認するために次のコマンドを実行します:

MariaDB [(none)]> SELECT VERSION();

次の出力が表示されるはずです:

+-------------------+
| VERSION()         |
+-------------------+
| 10.5.11-MariaDB-1 |
+-------------------+
1 row in set (0.001 sec)

この時点で、MariaDBデータベースサーバーがインストールされ、保護されました。次のステップに進むことができます。

PHP言語のインストール

PHPはHypertext Preprocessorの略で、サーバーサイドで使用されるスクリプト言語です。オープンソースであり、大規模なコミュニティサポートがあり、インターネット上でPHPアプリケーションをホストするために使用されます。

デフォルトでは、Debian 11で利用可能なPHPのバージョンはPHP 7.4です。次のコマンドを使用して、他の一般的に使用される拡張機能と共にPHPをインストールできます:

apt-get install php php-fpm php-cli php-mysql php-zip php-curl php-xml -y

PHPがインストールされたら、次のコマンドを使用してPHPのバージョンを確認します:

php -v

次の出力が表示されるはずです:

PHP 7.4.21 (cli) (built: Jul  2 2021 03:59:48) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.21, Copyright (c), by Zend Technologies

Nginx用の仮想ホストを作成する

ここでは、PHPページをホストするためのexample.comディレクトリを作成します。次のコマンドを使用して作成できます:

mkdir /var/www/html/example.com

次に、example.comディレクトリの所有権をwww-dataに設定します:

chown -R www-data:www-data /var/www/html/example.com

次に、次のコマンドを使用してNginxの仮想ホスト設定ファイルを作成します:

nano /etc/nginx/conf.d/example.conf

次の行を追加します:

server {

  listen 80;
  server_name example.com;

  root /var/www/html/example.com;
  index index.php;
  access_log /var/log/nginx/example_access.log;
  error_log /var/log/nginx/example_error.log;

  client_max_body_size 100M;

  location / {
    try_files $uri $uri/ /index.php$is_args$args;
  }

  location ~ \.php$ {
    try_files $uri =404;
    include fastcgi_params;
    fastcgi_pass unix:/run/php/php7.4-fpm.sock;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
  }

}

ファイルを保存して閉じたら、次のコマンドを使用してNginxの設定エラーを確認します:

nginx -t

次の出力が表示されるはずです:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

次に、Nginxサービスを再起動して設定変更を適用します:

systemctl restart nginx

次のコマンドを使用してNginxサービスのステータスを確認することもできます:

systemctl status nginx

次の出力が表示されるはずです:

? nginx.service - 高性能Webサーバーおよびリバースプロキシサーバー
     Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-08-21 04:37:27 UTC; 5s ago
       Docs: man:nginx(8)
   Main PID: 4378 (nginx)
      Tasks: 2 (limit: 2353)
     Memory: 6.2M
     CGroup: /system.slice/nginx.service
             ??4378 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
             ??4379 nginx: worker process

Aug 21 04:37:27 debian11 systemd[1]: Starting 高性能Webサーバーおよびリバースプロキシサーバー...
Aug 21 04:37:27 debian11 systemd[1]: Started 高性能Webサーバーおよびリバースプロキシサーバー。

NginxでのPHPインストールの確認

次に、Nginx Webサーバーで提供するサンプルPHPファイルを作成する必要があります。example.comディレクトリ内にphpinfo.phpファイルを作成できます:

nano /var/www/html/example.com/phpinfo.php

次の行を追加します:


ファイルを保存して閉じたら、Webブラウザを開き、URL http://example.com/phpinfo.php を使用してPHPページにアクセスします。次の画面にPHPページが表示されるはずです:

結論

上記のガイドでは、Debian 11にLEMPスタックをインストールする方法を説明しました。これで、LEMPスタックを使用して最初のWebサイトをホストし始めることができます。質問があればお気軽にお尋ねください。

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。