序章

Apache HTTPサーバーは、世界で最も広く使用されているWebサーバーです。 動的にロード可能なモジュール、堅牢なメディアサポート、他の一般的なソフトウェアとの広範な統合など、多くの強力な機能を提供します。

このガイドでは、Ubuntu20.04サーバーにApacheWebサーバーをインストールする方法について説明します。 このチュートリアルの詳細については、 Ubuntu20.04にApacheWebサーバーをインストールする方法を参照してください。

前提条件

このガイドを開始する前に、次のものが必要です。

  • Ubuntu20.04サーバーとsudo権限を持つ通常の非rootユーザー。 さらに、必須ではないポートをブロックするには、基本的なファイアウォールを有効にする必要があります。 Ubuntu 20.04 の初期サーバー設定ガイドに従って、通常のユーザーアカウントを構成し、サーバーのファイアウォールを設定する方法を学ぶことができます。

利用可能なアカウントがある場合は、root以外のユーザーとしてログインして開始します。

ステップ1—Apacheをインストールする

ApacheはUbuntuのデフォルトのソフトウェアリポジトリ内で利用できるため、従来のパッケージ管理ツールを使用してインストールできます。

ローカルパッケージインデックスを更新します。

  1. sudo apt update

apache2パッケージをインストールします。

  1. sudo apt install apache2

ステップ2—ファイアウォールを調整する

利用可能なufwアプリケーションプロファイルを確認します。

  1. sudo ufw app list
Output
Available applications: Apache Apache Full Apache Secure OpenSSH

構成したトラフィックを引き続き許可する最も制限の厳しいプロファイルを有効にして、ポート80(通常の暗号化されていないWebトラフィック)でのトラフィックを許可しましょう。

  1. sudo ufw allow 'Apache'

変更を確認します。

  1. sudo ufw status
Output
Status: active To Action From -- ------ ---- OpenSSH ALLOW Anywhere Apache ALLOW Anywhere OpenSSH (v6) ALLOW Anywhere (v6) Apache (v6) ALLOW Anywhere (v6)

ステップ3—Webサーバーを確認する

systemd initシステムで、次のように入力してサービスが実行されていることを確認してください。

  1. sudo systemctl status apache2
Output
apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor prese> Active: active (running) since Tue 2020-04-28 23:06:40 UTC; 56s ago Docs: https://httpd.apache.org/docs/2.4/ Main PID: 13785 (apache2) Tasks: 55 (limit: 1137) Memory: 5.3M CGroup: /system.slice/apache2.service ├─13785 /usr/sbin/apache2 -k start ├─13787 /usr/sbin/apache2 -k start └─13788 /usr/sbin/apache2 -k start

デフォルトのApacheランディングページにアクセスして、ソフトウェアがIPアドレスを介して正しく実行されていることを確認します。

http://your_server_ip

デフォルトのUbuntu20.04ApacheWebページを受け取るはずです。

Apache default page

Apache Webサーバーを使用する場合、仮想ホスト(Nginxのサーバーブロックと同様)を使用して、構成の詳細をカプセル化し、単一のサーバーから複数のドメインをホストできます。 your_domain というドメインを設定しますが、これを独自のドメイン名に置き換える必要があります。 DigitalOceanを使用したドメイン名の設定の詳細については、DigitalOceanDNSの概要を参照してください。

your_domainのディレクトリを作成します。

sudo mkdir /var/www/your_domain

ディレクトリの所有権を割り当てます。

  1. sudo chown -R $USER:$USER /var/www/your_domain

unmaskの値を変更していない場合は、Webルートのアクセス許可は正しいはずですが、次のように入力して確認できます。

  1. sudo chmod -R 755 /var/www/your_domain

nanoまたはお気に入りのエディターを使用して、サンプルのindex.htmlページを作成します。

  1. nano /var/www/your_domain/index.html

内部に、次のサンプルHTMLを追加します。

/var/www/your_domain/index.html
<html>
    <head>
        <title>Welcome to Your_domain!</title>
    </head>
    <body>
        <h1>Success!  The your_domain virtual host is working!</h1>
    </body>
</html>

終了したら、ファイルを保存して閉じます。

/etc/apache2/sites-available/your_domain.confで新しい仮想ホストファイルを作成します。

  1. sudo nano /etc/apache2/sites-available/your_domain.conf

新しいディレクトリとドメイン名用に更新された次の構成ブロックに貼り付けます。

/etc/apache2/sites-available/your_domain.conf
<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    ServerName your_domain
    ServerAlias your_domain
    DocumentRoot /var/www/your_domain
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

終了したら、ファイルを保存して閉じます。

a2ensiteでファイルを有効にします。

  1. sudo a2ensite your_domain.conf

000-default.confで定義されているデフォルトサイトを無効にします。

  1. sudo a2dissite 000-default.conf

構成エラーをテストします。

  1. sudo apache2ctl configtest

次の出力が表示されます。

Output
Syntax OK

Apacheを再起動して、変更を実装します。

  1. sudo systemctl restart apache2

これで、Apacheがドメイン名を提供するはずです。 これをテストするには、http://your_domainに移動します。ここで、次のようなメッセージが表示されます。

Apache virtual host example

結論

Webサーバーがインストールされたので、提供するコンテンツのタイプと、より豊かなエクスペリエンスを作成するために使用するテクノロジーについて、多くのオプションがあります。

より完全なアプリケーションスタックを構築したい場合は、 Ubuntu20.04でLAMPスタックを構成する方法に関するこの記事を確認してください。