このチュートリアルでは、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をインストールします
いつものように、この投稿が役に立った場合は、無料のニュースレターを購読して、その他のヒントやコツを入手してください。気をつけて🙂