ウェブサイト検索

Ubuntu 20.04 で PhpMyAdmin を使用して LEMP スタックをインストールする方法


LEMP が何なのか知らない人のために説明します。これはソフトウェア パッケージの組み合わせです。Linux、Nginx (< と発音します)EngineX)、MariaDB、PHP。

LEMP は、テスト目的でも実際の運用環境でも使用でき、Laravel や Yii などの PHP フレームワーク、または WordPress、Drupal などのコンテンツ管理システムを使用して Web アプリケーションをデプロイできます。 、またはJoomla

LAMP とLEMPの違いは何なのか疑問に思われるかもしれません。唯一の違いは、含まれている Web サーバーです - Apache (LAMP 内) と Nginx (LEMP 内) >)。どちらの Web サーバーも非常に優れており、Apache が最も頻繁に使用されていますが、Nginx も後退しません。

通常 LEMP スタックと一緒にインストールされるもう 1 つの広く使用されているアプリケーションは PhpMyAdmin です。これは、MySQL/MariaDB データベース サーバーを管理するための PHP Web ベースのツールです。 Webブラウザから。

Ubuntu 20.04 の LAMP セットアップをお探しの場合は、Ubuntu 20.04 の LAMP セットアップ ガイドをお読みください。

前提条件:

  1. Ubuntu 20.04 サーバー インストール ガイド

この記事では、Ubuntu 20.04 サーバーに PhpMyAdmin を使用して LEMP スタックをインストールして構成する方法を説明します。

ステップ 1: Ubuntu 20.04 に Nginx をインストールする

1. Nginx は、サーバー リソースをあまり消費せずに多くの同時接続を処理できるように設計された高速な最新の Web サーバーです。これが、多くの場合、エンタープライズ環境で好まれる選択肢である理由です。

NGINX は、ロード バランサーや Web コンテンツ キャッシュとしてもよく使用されます。名前ベースおよび IP ベースの仮想サーバー (Apache の仮想ホストに類似) をサポートします。

次のコマンドを実行して、Ubuntu 20.04 デスクトップまたはサーバーに Nginx をインストールできます。

sudo apt update
sudo apt install nginx

Nginx 設定ファイルは /etc/nginx ディレクトリに保存され、そのメイン設定ファイルは /etc/nginx/nginx.conf です。重要なのは、Web ファイルを保存するためのデフォルトのドキュメント ルートは /usr/share/nginx/html/ であることです。ただし、Web サイトまたはアプリケーションのサーバー ブロック構成ファイルで構成する必要がある標準の /var/www/html を使用できます。

2. Ubuntu パッケージ インストーラーは、systemd をトリガーして Nginx サービスを開始し、サーバーが再起動されるたびにサービスが自動的に開始されるようにします。次の systemctl コマンドを使用して、サービスが実行中で有効になっていることを確認します。

sudo systemctl status nginx 
sudo systemctl is-enabled nginx

3. 次に、サーバー IP アドレスを使用してブラウザ経由で Nginx ページを呼び出し、Nginx のインストールが成功したかどうかを確認します。

http://SERVER_IP

サーバーの IP アドレスがわからない場合は、次のように IP コマンドを使用して見つけることができます。

ip addr show

次のスクリーンショットに示すように、NGINX のデフォルト Web ページが読み込まれ、インストールと動作が正しいことが確認されます。

ステップ 2: Ubuntu 20.04 に MariaDB データベースをインストールする

4. MariaDB は、Oracle による買収後の MySQL のコミュニティ フォークとして設計された、比較的新しいリレーショナル データベース管理システムです。

MariaDB のインストールは簡単で、次のコマンドで開始できます。

sudo apt install mariadb-server mariadb-client

5. MariaDB サービスも自動的に開始され、システム起動時に常に開始されるように有効になっています。これは、次のコマンドを使用して確認できます。

sudo systemctl status mariadb
sudo systemctl is-enabled mariadb

6. MariaDB のセキュリティを向上させたい場合は、mysql_secure_installation コマンドを実行できます。このコマンドにより、基本的かつ重要な設定オプションが提供されます。 :

sudo mysql_secure_installation

次に、データベースのルート (または管理者) ユーザーのパスワードを設定するオプションを選択し、プロンプトに従って質問を注意深く読みます。データベース サーバーを保護するには、スクリーンショットに示されている質問に答えてください。

  • root の現在のパスワードを入力してください (なしの場合は入力): Enter
  • rootパスワードを設定しますか? [Y/N] y
  • 匿名ユーザーを削除しますか? [Y/N] y
  • リモートからの root ログインを禁止しますか? [Y/N] y
  • テスト データベースを削除してアクセスしますか? [Y/N] y
  • 特権テーブルを今すぐリロードしますか? [Y/N] y

7. データベース操作を作成、管理、実行するには、-u フラグを指定した mysql シェル コマンドでデータベースのユーザー名とデータベースのユーザー名を指定する必要があります。 -p を使用してユーザーのパスワードを指定します。

root ユーザーとして接続するには、sudo コマンドを使用します (-p フラグがなくても)。そうしないと、次のスクリーンショットで強調表示されているエラーが表示されます。

mysql -u root -p
sudo mysql -u root

ステップ 3: Ubuntu 20.04 に PHP をインストールする

8. PHP は、Web サイトや Web アプリケーションを構築するための、人気のあるオープンソースで柔軟な動的スクリプト言語です。さまざまなプログラミング手法をサポートします。重要なのは、PHP コミュニティは大規模かつ多様で、無数のライブラリ、フレームワーク、その他の有用なコンポーネントで構成されているということです。

NGINX は、FPM (FastCGI Process Manager) または PHP-FPM を使用して PHP スクリプトを処理します。 PHP-FPM は、広く使用されている代替 PHP FastCGI 実装であり、多くの追加機能が付属しており、トラフィックの多いサイト/Web アプリケーションを強化するために使用されます。

PHPPHP-FPM をインストールするには、次のコマンドを実行します。これにより、必要な追加パッケージもインストールされます。

sudo apt install php php-mysql php-fpm

PHP 7.4Ubuntu 20.04PHP のデフォルト バージョンであるため、PHP 設定ファイルは /etc/php/7.4 にあります。 /PHP-FPM 構成ファイルは /etc/php/7.4/fpm に保存されます。

9. 次に、php7.4-fpm サービスが稼働しているかどうか、また次のコマンドで有効になっているかどうかを確認します。

sudo systemctl status php7.4-fpm
sudo systemctl is-enabled php7.4-fpm

ステップ 4: PHP-FPM と連携するように Nginx を構成する

10. 次に、クライアント要求を PHP-FPM にプロキシするように NGINX を設定する必要があります。デフォルトでは、PHP-FPM をリッスンするように設定されています。 /etc/php/7.4/fpm/pool.d/www.conf デフォルトのプール設定ファイルの listen パラメータで定義されている UNIX ソケット。

sudo vi /etc/php/7.4/fpm/pool.d/www.conf 

11. デフォルトのサーバー ブロック設定ファイル (/etc/nginx/sites-available/default) で、PHP を処理するための場所ディレクティブのコメントを解除します。次のスクリーンショットに示すような外観をリクエストします。

sudo vi /etc/nginx/sites-available/default

ファイルを保存して終了します。

12. 次に、NGINX 構成構文が正しいかどうかをテストします。問題がなければ、Nginx サービスを再起動して新しい変更を適用します。

sudo nginx -t
sudo systemctl restart nginx

13. 次に、NGINX が PHP-FPM と連携して PHP リクエストを処理できるかどうかをテストします。ドキュメントのルート ディレクトリに簡単な info.php ページを作成します。

echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php

14. ブラウザで、次のアドレスを使用して移動します。次のスクリーンショットに示すように、PHP 構成ページが読み込まれます。

http://SERVER_IP/info.php

ステップ 5: Ubuntu 20.04 に PhpMyAdmin をインストールする

15. PhpMyAdmin は、Web ブラウザを通じて MySQL/MariaDB データベース サーバーを管理するために特別に作成された、無料のオープンソース Web ベースの PHP アプリケーションです。直感的なグラフィカル インターフェイスを提供し、データベース管理タスクの幅広い共通機能をサポートします。

sudo apt install phpmyadmin

16. パッケージのインストール中に、PhpMyAdmin パッケージのいくつかの側面を構成するように求められます。まず、実行するデフォルトの Web サーバーを選択するよう求められます。 NGINX が表示されたリストにないため、Esc を押します。

17. 次に、PhpMyAdmin を使用するにはデータベースが必要です。このパッケージ構成プロンプトで、Yes を選択して、dbconfig-common パッケージを使用して PhpMyAdmin のデータベースを構成します。

18. 次のプロンプトで、PhpMyAdminMariaDB データベースに登録するためのパスワードを入力する必要があります。安全なパスワードを入力し、「Enter」をクリックします。

ステップ 6: PhpMyAdmin サイトを提供するための NGINX の構成

19. NGINX/usr/share/phpmyadmin にある PhpMyAdmin サイトを提供できるようにするには、シンボリックリンクを作成します。ドキュメントルートの下にあるこのディレクトリに対して、次のように PHPMyAdmin ディレクトリに正しいアクセス許可と所有権を設定します。

sudo ln -s  /usr/share/phpmyadmin /var/www/html/phpmyadmin
sudo chmod 775 -R /usr/share/phpmyadmin/
sudo chown root:www-data -R /usr/share/phpmyadmin/

20. さらに、デフォルトのサーバー ブロック構成 (/etc/nginx/sites-available/default) ファイルの index ディレクティブに次のものが含まれていることを確認してください。次のスクリーンショットに示すように、index.php

21. 次に、Nginx サービスをもう一度再起動して、上記の変更を適用します。

sudo systemctl restart nginx

22. 次のアドレスを使用して、ブラウザから PhpMyAdmin サイトにアクセスします。

http://SERVER_IP/phpmyadmin

ログイン ページで、PHPMyAdmin のユーザー名とパスワードを使用して認証します。 MariaDB データベースがインストールされているローカルホスト上の PHPMyAdmin にアクセスしない限り、リモート root ユーザーのログインは無効になっていることに注意してください。root アクセスは機能しません。

最後に重要なことですが、ガイド「PhpMyAdmin Web インターフェイスを保護するための 4 つの役立つヒント」を使用して、PhpMyAdmin インストールを保護してください。

結論

LEMP のセットアップが完了したので、Web アプリケーションの構築を開始したり、インストールしたばかりのNginx サービスや MariaDB サービスを試したりすることができます。これらは広く使用されており、システム管理者にはそれらについての知識をさらに深めることを強くお勧めします。