Linux、Apache、MySQL、PHP(LAMP)スタックをUbuntu20.04にインストールする方法[クイックスタート]
序章
このクイックスタートガイドでは、Ubuntu20.04サーバーにLAMPスタックをインストールします。
このチュートリアルのより詳細なバージョンと各ステップの詳細については、 Ubuntu 20.04にLinux、Apache、MySQL、PHP(LAMP)スタックをインストールする方法を参照してください。
前提条件
このガイドに従うには、Ubuntu20.04サーバーにアクセスする必要があります。 sudo
ユーザー。
ステップ1—Apacheをインストールします
パッケージマネージャーのキャッシュを更新してから、次のコマンドを使用してApacheをインストールします。
- sudo apt update
- sudo apt install apache2
インストールが完了したら、サーバーでHTTPトラフィックを許可するようにファイアウォール設定を調整する必要があります。 次のコマンドを実行して、ポートでの外部アクセスを許可します 80
(HTTP):
- sudo ufw allow in "Apache"
新しいファイアウォールルールを追加すると、WebブラウザからサーバーのパブリックIPアドレスまたはドメイン名にアクセスして、サーバーが稼働しているかどうかをテストできます。 次のようなページが表示されます。
ステップ2—MySQLをインストールする
次に、PHP環境で使用される一般的なデータベース管理システムであるMySQLをインストールします。
繰り返しますが、 apt
このソフトウェアを入手してインストールするには:
- sudo apt install mysql-server
インストールが完了したら、MySQLにプリインストールされているセキュリティスクリプトを実行することをお勧めします。 次のコマンドを実行して、インタラクティブスクリプトを開始します。
- sudo mysql_secure_installation
これにより、設定するかどうかを尋ねられます VALIDATE PASSWORD PLUGIN
. 答え Y
はい、または有効にせずに続行するための他の何か。 「はい」と答えると、パスワード検証のレベルを選択するように求められます。
次に、サーバーはMySQL rootユーザーのパスワードを選択して確認するように求めます。 MySQLルートユーザーのデフォルトの認証方法ではパスワードの使用は不要ですが、パスワードが設定されている場合でも、追加の安全対策としてここで強力なパスワードを定義する必要があります。
残りの質問については、を押してください Y
とヒット ENTER
各プロンプトでキーを押します。
注:この記事の執筆時点では、ネイティブMySQLPHPライブラリ mysqlnd
はサポートしていません caching_sha2_authentication
、MySQL8のデフォルトの認証方法。 そのため、MySQL 8でPHPアプリケーションのデータベースユーザーを作成するときは、それらが使用するように構成されていることを確認する必要があります。 mysql_native_password
代わりは。 その方法については、Ubuntu20.04ガイドの詳細なLAMPのステップ6を参照してください。
ステップ3—PHPをインストールする
PHPとその依存関係をインストールするには、次のコマンドを実行します。
- sudo apt install php libapache2-mod-php php-mysql
インストールが完了したら、次のコマンドを実行してPHPのバージョンを確認できます。
- php -v
OutputPHP 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
ステップ4—Webサイトの仮想ホストを作成する
このガイドでは、 your_domain というドメインを設定しますが、これを独自のドメイン名に置き換える必要があります。
Ubuntu 20.04上のApacheでは、デフォルトで1つのサーバーブロックが有効になっており、 /var/www/html
ディレクトリ。 変更する代わりに /var/www/html
、内にディレクトリ構造を作成します /var/www
your_domain サイトの場合、 /var/www/html
クライアント要求が他のサイトと一致しない場合に提供されるデフォルトのディレクトリとして配置されます。
次のように、your_domainのディレクトリを作成します。
- sudo mkdir /var/www/your_domain
次に、ディレクトリの所有権を $USER
現在のシステムユーザーを参照する環境変数:
- sudo chown -R $USER:$USER /var/www/your_domain
次に、Apacheの新しい構成ファイルを開きます sites-available
好みのコマンドラインエディタを使用したディレクトリ:
- sudo nano /etc/apache2/sites-available/your_domain.conf
これにより、新しい空白のファイルが作成されます。 次の必要最低限の構成で貼り付けます。
<VirtualHost *:80>
ServerName your_domain
ServerAlias www.your_domain
ServerAdmin webmaster@localhost
DocumentRoot /var/www/your_domain
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
完了したら、ファイルを保存して閉じます。 使用している場合 nano
、を押すことでそれを行うことができます CTRL+X
、 それから Y
と ENTER
.
これで使用できます a2ensite
新しい仮想ホストを有効にするには:
- sudo a2ensite your_domain
ApacheのデフォルトのWebサイトを無効にするには、次のように入力します。
- sudo a2dissite 000-default
構成ファイルに構文エラーが含まれていないことを確認するには、次のコマンドを実行します。
- sudo apache2ctl configtest
最後に、Apacheをリロードして、これらの変更を有効にします。
- sudo systemctl reload apache2
新しいWebサイトはアクティブになりましたが、Webルート /var/www/your_domain
まだ空です。 作成する index.html
その場所にファイルを作成して、仮想ホストが期待どおりに機能することをテストできるようにします。
- nano /var/www/your_domain/index.html
このファイルには次のコンテンツを含めます。
<html>
<head>
<title>your_domain website</title>
</head>
<body>
<h1>Hello World!</h1>
<p>This is the landing page of <strong>your_domain</strong>.</p>
</body>
</html>
次に、ブラウザに移動して、サーバーのドメイン名またはIPアドレスにもう一度アクセスします。
http://server_domain_or_IP
次のようなページが表示されます。
ステップ5—ApacheでPHPをテストする
次に、PHPテストスクリプトを作成して、ApacheがPHPファイルのリクエストを処理および処理できることを確認します。
名前の付いた新しいファイルを作成します info.php
カスタムWebルートフォルダ内:
- nano /var/www/your_domain/info.php
これにより、空のファイルが開きます。 ファイル内に次のコンテンツを追加します。
<?php
phpinfo();
終了したら、ファイルを保存して閉じます。
Webブラウザーに移動し、サーバーのドメイン名またはIPアドレスにアクセスし、続いてスクリプト名(この場合は次のようになります)にアクセスします。 info.php
:
http://server_domain_or_IP/info.php
次のようなページが表示されます。
そのページでPHPサーバーに関する関連情報を確認した後、PHP環境とUbuntuサーバーに関する機密情報が含まれているため、作成したファイルを削除することをお勧めします。 使用できます rm
そうするために:
- sudo rm /var/www/your_domain/info.php
関連チュートリアル
このチュートリアルに関連するより詳細なガイドへのリンクは次のとおりです。