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

Ubuntu20.04サーバー/デスクトップにLAMPスタックをインストールする方法

このチュートリアルでは、Ubuntu20.04LTSにLAMPスタックをインストールする方法を説明します。ソフトウェアスタックは、一緒にバンドルされたソフトウェアツールのセットです。 LAMPはLinux、Apache、MariaDB / MySQL、PHPの略で、これらはすべてオープンソースで無料で使用できます。これは、動的なWebサイトおよびWebアプリケーションを強化する最も一般的なソフトウェアスタックです。 Linuxはオペレーティングシステムです。 ApacheはWebサーバーです。 MariaDB / MySQLはデータベースサーバーであり、PHPは動的Webページの生成を担当するサーバー側のスクリプト言語です。

前提条件

このチュートリアルに従うには、ローカルコンピューターまたはリモートサーバーで実行されているUbuntu20.04OSが必要です。

VPS(仮想プライベートサーバー)をお探しの場合は、この特別なリンクを介してDigitalOceanにアカウントを登録すると、50ドルの無料クレジットを取得できます。 (新規ユーザーのみ)。すでにDigitalOceanユーザーである場合は、この特別なリンクからVultrにアカウントを登録して、50ドルの無料クレジットを取得できます(新規ユーザーのみ)。

また、ドメイン名を使用してLAMPスタックを設定する必要がある場合は、NameCheapからドメイン名を購入することをお勧めします。これは、価格が低く、whoisのプライバシー保護が一生無料になるためです。

ステップ1:ソフトウェアパッケージを更新する

LAMPスタックをインストールする前に、リポジトリとソフトウェアパッケージを更新することをお勧めします。 Ubuntu20.04OSで次のコマンドを実行します。

sudo apt update

sudo apt upgrade

ステップ2:ApacheWebサーバーをインストールする

次のコマンドを入力して、ApacheWebサーバーをインストールします。 apache2-utils パッケージには、Apache HTTPサーバーベンチマークツール(ab)などの便利なユーティリティがインストールされます。

sudo apt install -y apache2 apache2-utils

インストール後、Apacheが自動的に起動します。 systemctlでステータスを確認してください 。

systemctl status apache2

サンプル出力:

● apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2020-04-11 11:31:31 CST; 2s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 53003 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 53011 (apache2)
      Tasks: 55 (limit: 19072)
     Memory: 6.4M
     CGroup: /system.slice/apache2.service
             ├─53011 /usr/sbin/apache2 -k start
             ├─53012 /usr/sbin/apache2 -k start
             └─53013 /usr/sbin/apache2 -k start

ヒント:上記のコマンドがすぐに終了しない場合は、Qキーを押して端末の制御を取り戻すことができます。

実行されていない場合は、systemctlを使用して開始します。

sudo systemctl start apache2

また、Apacheがシステムの起動時に自動的に起動できるようにすることもお勧めします。

sudo systemctl enable apache2

Apacheのバージョンを確認してください:

apache2 -v

出力:

Server version: Apache/2.4.41 (Ubuntu)
Server built:   2020-03-05T18:51:00

次に、ブラウザのアドレスバーにUbuntu20.04サーバーのパブリックIPアドレスを入力します。 「動作します!」と表示されます。 Webページ。これは、ApacheWebサーバーが正しく実行されていることを意味します。ローカルのUbuntu20.04コンピューターにLAMPをインストールする場合は、「127.0.0.1」と入力します。 またはlocalhost ブラウザのアドレスバーに表示されます。

接続が拒否されるか、完了に失敗した場合は、ファイアウォールがTCPポート80への着信要求を妨げている可能性があります。iptablesファイアウォールを使用している場合は、次のコマンドを実行してTCPポート80を開く必要があります。

sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT

UFWファイアウォールを使用している場合は、このコマンドを実行してTCPポート80を開きます。

sudo ufw allow http

次に、www-dataを設定する必要があります (Apacheユーザー)ドキュメントルート(別名Webルート)の所有者として。デフォルトでは、rootユーザーが所有しています。

sudo chown www-data:www-data /var/www/html/ -R

デフォルトでは、Apacheはシステムホスト名をグローバルServerNameとして使用します 。 DNSでシステムのホスト名を解決できない場合は、sudo apache2ctl -tを実行した後に次のエラーが表示される可能性があります。 コマンド。

AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1. Set the 'ServerName' directive globally to suppress this message

この問題を解決するために、グローバルなServerNameを設定できます。 Apacheで。 Nanoコマンドラインテキストエディタを使用して、新しい構成ファイルを作成します。

sudo nano /etc/apache2/conf-available/servername.conf

このファイルに次の行を追加します。

ServerName localhost

ファイルを保存して閉じます。 Nanoテキストエディタでファイルを保存するには、Ctrl+Oを押します。 、Enterキーを押して確認します。終了するには、Ctrl+Xを押します 。次に、この構成ファイルを有効にします。

sudo a2enconf servername.conf

変更を有効にするには、Apacheをリロードします。

sudo systemctl reload apache2

ここで、sudo apache2ctl -tを実行すると もう一度コマンドを実行すると、上記のエラーメッセージは表示されません。

ステップ3:MariaDBデータベースサーバーをインストールする

MariaDBは、MySQLのドロップイン代替品です。これは、OracleがMySQLをクローズドソース製品に変える可能性があることを懸念しているMySQLチームの元メンバーによって開発されました。次のコマンドを入力して、Ubuntu20.04にMariaDBをインストールします。

sudo apt install mariadb-server mariadb-client

インストール後、MariaDBサーバーが自動的に起動します。 systemctlを使用します ステータスを確認します。

systemctl status mariadb

出力:

● mariadb.service - MariaDB 10.3.22 database server
     Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
     Active: active (running) since Fri 2020-04-10 14:19:16 UTC; 18s ago
       Docs: man:mysqld(8)
             https://mariadb.com/kb/en/library/systemd/
   Main PID: 9161 (mysqld)
     Status: "Taking your SQL requests now..."
      Tasks: 31 (limit: 9451)
     Memory: 64.7M
     CGroup: /system.slice/mariadb.service
             └─9161 /usr/sbin/mysqld

実行されていない場合は、次のコマンドで開始します:

sudo systemctl start mariadb

起動時にMariaDBを自動的に起動できるようにするには、

を実行します。
sudo systemctl enable mariadb

次に、インストール後のセキュリティスクリプトを実行します。

sudo mysql_secure_installation

MariaDBのrootパスワードの入力を求められたら、rootパスワードがまだ設定されていないため、Enterキーを押します。次に、 yと入力します MariaDBサーバーのルートパスワードを設定します。

次に、Enterキーを押して残りのすべての質問に答えることができます。これにより、匿名ユーザーが削除され、リモートrootログインが無効になり、テストデータベースが削除されます。このステップは、MariaDBデータベースセキュリティの基本的な要件です。 (Yが大文字になっていることに注意してください。これは、デフォルトの回答であることを意味します。)

デフォルトでは、UbuntuのMariaDBパッケージはunix_socketを使用します ユーザーログインを認証します。これは基本的に、OSのユーザー名とパスワードを使用してMariaDBコンソールにログインできることを意味します。したがって、次のコマンドを実行して、MariaDBのrootパスワードを指定せずにログインできます。

sudo mariadb -u root

終了するには、

を実行します
exit;

MariaDBサーバーのバージョン情報を確認してください。

mariadb --version

ご覧のとおり、MariaDB10.3.22をインストールしました。

mariadb  Ver 15.1 Distrib 10.3.22-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2

ステップ4:PHP7.4をインストールする

この記事の執筆時点では、PHP7.4はPHPの最新の安定バージョンであり、PHP7.3よりもパフォーマンスがわずかです。次のコマンドを入力して、PHP7.4といくつかの一般的なPHPモジュールをインストールします。

sudo apt install php7.4 libapache2-mod-php7.4 php7.4-mysql php-common php7.4-cli php7.4-common php7.4-json php7.4-opcache php7.4-readline

Apache php7.4モジュールを有効にしてから、ApacheWebサーバーを再起動します。

sudo a2enmod php7.4

sudo systemctl restart apache2

PHPのバージョン情報を確認してください。

php --version

出力:

PHP 7.4.3 (cli) (built: Mar 26 2020 20:24:23) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.3, Copyright (c), by Zend Technologies

ApacheサーバーでPHPスクリプトをテストするには、info.phpを作成する必要があります ドキュメントのルートディレクトリにあるファイル。

sudo nano /var/www/html/info.php

次のPHPコードをファイルに貼り付けます。

<?php phpinfo(); ?>

Nanoテキストエディタでファイルを保存するには、Ctrl+Oを押します。 、Enterキーを押して確認します。終了するには、Ctrl+Xを押します 。ブラウザのアドレスバーに、server-ip-address/info.phpと入力します。 。 server-ip-addressを置き換えます 実際のIPで。ローカルコンピューターでこのチュートリアルに従う場合は、「127.0.0.1/info.php」と入力します。 またはlocalhost/info.php

サーバーのPHP情報が表示されます。これは、PHPスクリプトがApacheWebサーバーで正しく実行できることを意味します。

ApacheでPHP-FPMを実行する方法

ApacheWebサーバーでPHPコードを実行するには基本的に2つの方法があります。

  • ApachePHPモジュール
  • PHP-FPM。

上記の手順では、Apache PHP7.4モジュールを使用してPHPコードを処理しますが、通常は問題ありません。ただし、場合によっては、代わりにPHP-FPMを使用してPHPコードを実行する必要があります。方法は次のとおりです。

ApachePHP7.4モジュールを無効にします。

sudo a2dismod php7.4

PHP-FPMをインストールします。

sudo apt install php7.4-fpm

proxy_fcgiを有効にする およびsetenvif モジュール。

sudo a2enmod proxy_fcgi setenvif

/etc/apache2/conf-available/php7.4-fpm.confを有効にします 構成ファイル。

sudo a2enconf php7.4-fpm

変更を有効にするには、Apacheを再起動します。

sudo systemctl restart apache2

ここで、info.phpを更新すると ブラウザのページで、サーバーAPIがApache 2.0 Handlerから変更されていることがわかります。 FPM/FastCGIへ 、これは、ApacheWebサーバーがPHPリクエストをPHP-FPMに渡すことを意味します。

おめでとうございます!これで、Ubuntu 20.04にLAMPスタック(Apache、MariaDB、PHP7.4)が正常にインストールされました。サーバーのセキュリティのために、info.phpを削除する必要があります 詮索好きな目を防ぐために今すぐ提出してください。

sudo rm /var/www/html/info.php

次のステップ

このチュートリアルが、Ubuntu20.04LTSにLAMPスタックをインストールするのに役立つことを願っています。 phpMyAdminをインストールすることをお勧めします 、これは無料のオープンソースのWebベースのデータベース管理ツールです。

  • Ubuntu 20.04にApache(LAMP)を使用してphpMyAdminをインストールする方法

LAMPスタックの上にWordPressをインストールして、独自のWebサイトやブログを作成することもできます。

  • Apache、MariaDB、PHP7.4(LAMP)を使用してUbuntu20.04にWordPressをインストールします

いつものように、この投稿が役に立った場合は、無料のニュースレターを購読して、その他のヒントやコツを入手してください。気をつけて🙂


Ubuntu
  1. Ubuntu18.04にLAMPスタックをインストールする方法

  2. Linux、Apache、MySQL、PHP(LAMP)スタックをUbuntu 16.04 /Ubuntu14.04にインストールする方法

  3. Linux、Apache、MariaDB、PHP(LAMPスタック)をUbuntu18.04にインストールする方法

  1. Ubuntu 18.04 LTSにApache、MySQL、PHP(LAMP)スタックをインストールします

  2. Ubuntu 20.04 LTSにApache、MySQL、PHP(LAMPスタック)をインストールします

  3. UbuntuサーバーからUbuntuデスクトップをインストールする方法

  1. Ubuntu20.04にLAMPスタックをインストールする方法

  2. Debian10バスターサーバー/デスクトップにLAMPスタックをインストールする方法

  3. Ubuntu18.04デスクトップまたはサーバーにqBittorrentをインストールする方法