高負荷のニーズに対応するオープンソースのWebサーバーをお探しですか?UbuntuにApacheをインストールして完璧な解決策にしましょう!
Apacheは最も広く使用されているWebサーバーであり、大量のトラフィックを簡単に処理できます。このチュートリアルでは、Ubuntu LinuxサーバーにApacheをインストールし、仮想ホストを設定する方法を学びます。
今日Apacheを試して、Webサーバーのダウンタイムを解消しましょう!
前提条件
このチュートリアルは実践的なデモンストレーションです。一緒に進める場合は、以下の準備が必要です。
- Ubuntuサーバー – このチュートリアルではUbuntu 20.04を使用します。
- A user account with root privileges.
UbuntuサーバーにApacheをインストールする方法
Apacheには多くの強力な機能があります。ダイナミックにロード可能なモジュール、多機能な構成システム、広範なログ機能などが利用できます。これらの機能を活用するために、まずApacheをサーバーにインストールしましょう。
デフォルトでは、ApacheパッケージはUbuntuリポジトリで利用可能であり、apt
パッケージマネージャーを使用して1つのコマンドを実行することでApacheをインストールできます。
1. サーバーが最新の状態であり、セキュリティパッチが適用されていることを確認するため、以下のapt update
コマンドを実行してください。

Updating Server Package Index
2. システム上で利用可能なすべてのApacheパッケージを検索し、一覧表示するには、以下のapt-cache
コマンドを実行します。
以下のスクリーンショットでは、利用可能なすべてのApacheパッケージと、最も一般的なパッケージが表示されています:
- apache2 – Apache HTTP Server – このパッケージは標準のApacheウェブサーバーです。
- libapache2-mod-php – このパッケージはApacheウェブサーバーに対するPHPサポートを提供します。
- apache2-ssl-dev – このパッケージはApacheでSSL/TLS接続をサポートします。
- apache2-utils – このパッケージは、Apacheウェブサーバー用のさまざまなユーティリティを提供します。たとえば、基本認証のユーザーを作成するhtpasswdなどです。

3. サーバーにApacheをインストールするには、次のapt install
コマンドを実行します。

4. パッケージがインストールされたら、以下のsystemctl
コマンドを実行してApache(apache2
)をstart
してください。このコマンドには出力がありませんが、次の手順でApacheサービスの状態を確認します。
5. 今度は、以下のコマンドを実行してApacheをブート時にenable
に設定してください。UbuntuのデフォルトのインストールではApacheサービスは自動的に起動しないためです。

6. 次に、以下のsystemctl
コマンドを実行してApache(apache2
)サービスのstatus
を確認します。
以下の出力が表示されます。アクティブ(実行中)の状態は、Apacheサービスが正常に起動して実行されていることを示しています。

7. 以下のコマンドを実行してサーバーにインストールされているApacheのバージョンを確認します。
この執筆時点では、最新の安定版Apacheバージョンは2.4.41ですが、あなたのものは異なるかもしれません。

8. 最後に、お好きなウェブブラウザを開いて、UbuntuサーバーのIPアドレスまたはホスト名に移動します(つまり、192.168.1.100)。
以下に、インストールプロセス中に作成されたデフォルトのApacheウェブページが表示されます。このページは、Apacheが正常にインストールされ、期待どおりに動作していることを確認します。
何らかの理由でエラーが発生した場合は、次のセクションに進み、ファイアウォールを構成してください。

前のセクションでは、ApacheサーバーからWebページをリクエストし、デフォルトのApacheウェブページが表示されました。しかし、以下に示すように、「接続が拒否されました」というエラーが発生した場合はどうでしょうか?このエラーは、ファイアウォールがApacheサーバーへのアクセスをブロックしていることが原因となります。

この接続エラーを解決するために、ファイアウォールの設定を変更してApacheサーバーへのアクセスを許可します。また、デフォルトのUbuntuインストールには、サーバーへの不正なアクセスから保護するためのファイアウォールであるUFWが含まれています。
1. 以下のコマンドを実行して、UFWに含まれるすべてのアプリケーションプロファイルをリストします。
以下にUFWで利用可能な異なるアプリケーションが表示されます:
- Apache Full – このプロファイルは、Apacheウェブサーバーが必要とするポートの全範囲(ポート80および443)へのアクセスを許可します。
- Apache – ポート80へのアクセスを許可するデフォルトのプロファイルです。
これはセキュリティが低いため、本番環境ではこのプロファイルを使用しないでください。
- Apache Secure – このプロファイルは、TLS/SSLで暗号化されたトラフィック(ポート443)へのアクセスを制限するため、より安全です。
- OpenSSH – このプロファイルは、SSH接続を許可するためのSSHポート(ポート22)へのアクセスを許可します。

2. 次に、以下のコマンドを実行して、Apache Full
プロファイルとSSH
を有効にします(allow
)。
これらのコマンドは、開発環境で役立つすべてのポートへのアクセスを許可します。

おそらく、アプリケーションを無効にしたい場合は、許可オプションを無効オプションに変更することが好ましいです。次のようにします:sudo ufw disable ‘app_profile’
3. 下記のufw status
コマンドを実行して、UFWファイアウォールのステータスを確認します。
以下に、Apache FullとOpenSSHがどこからでもアクセス可能であることを示すファイアウォールルールがあります。

4. 最後に、ウェブブラウザを開いて、Apacheサーバーからウェブページをリクエストしてみてください。この時点で、インストールプロセス中に作成されたデフォルトのApacheウェブページが表示されます。

ウェブサイトを提供するための仮想ホストの設定
Apacheサーバーが起動しているので、最もエキサイティングな部分、つまりウェブアプリケーションをホストする準備が整いました。どのようにして? Ubuntuサーバー上で仮想ホストを設定します。 仮想ホストは、1つのIPアドレスで複数のウェブサイトをホストできるようにする構成ファイルです。
このチュートリアルのこの地点からファイルとディレクトリを作成するには、sudoアクセスが必要です。
仮想ホストの設定を開始するには:
1. 以下のコマンドを実行して、/var/www/example.com
という新しいディレクトリを作成します。このディレクトリをウェブサイトのコンテンツを格納するために使用します。実際のドメイン名でexample.com
を置き換えてください。
このコマンドには出力がありませんが、次のコマンドを実行してディレクトリを確認できます: ls /var/www
2. 次に、以下のchown
コマンドを実行して、/var/www/example.com
ディレクトリの所有権をユーザーアカウントに変更します。このコマンドには出力がありませんが、ウェブサイトのコンテンツを管理することができます。
3. 次に、/var/www/example.com
ディレクトリのアクセス許可を755
に変更するために、以下のchmod
コマンドを実行します。このコマンドには出力がありませんが、ユーザーアカウントにウェブサイトのコンテンツへの読み取りと書き込みアクセスが付与されます。
4. 今、お好みのエディタで/var/www/example.comディレクトリにindex.htmlという名前のファイルを作成します。ファイルに以下のコードを記入し、変更を保存してファイルを閉じます。index.htmlファイルは、ウェブサイトのデフォルトページとして機能します。
以下のコードは、テキスト「Hello World! Your virtual host is working!」を表示するシンプルなウェブページを作成します。
5. /etc/apache2/sites-availableディレクトリにexample.com.confという名前の新しいバーチャルホスト構成ファイルを作成します。
新しい仮想ホストを含めるためにデフォルトの/etc/apache2/sites-available/000-default.confファイルを編集できます。ただし、ウェブサイト用に新しいファイルを作成する方が良いアイデアです。この方法では、設定ファイルを整理するのに役立ちます。
以下の構成をexample.com.confファイルにコピー&ペーストしてください。ただし、example.comとwebmaster@localhostをウェブサイトの実際の値で置き換えてください。
変更を保存してファイルを閉じてください。
6. 以下の各コマンドを実行して、デフォルトの仮想ホストファイルを無効にし、新しい仮想ホストファイルを有効にします。
デフォルトの仮想ホストファイルはデフォルトで有効になっており、デフォルトの仮想ホストファイルを無効にしない限り、新しい仮想ホストファイルを使用できません。

7. 下記のservice
コマンドを実行して、変更を適用するためにApacheサーバー(apache2
)をrestart
してください。
8. 最後に、ウェブブラウザを開き、ウェブサイト(example.com)に移動してください。
Apacheサーバーの設定が正しい場合、ウェブブラウザに以下のメッセージが表示されます。

Conclusion
このチュートリアルでは、UbuntuにApacheをインストールし、仮想ホストを設定して、1つのサーバーでウェブサイトを提供する方法を学びました。この段階では、Ubuntuサーバーで複数のウェブサイトを効果的にホストできるようになりました。
このチュートリアルは入門書として機能し、Apacheをさらに進めて他の機能を構成することを検討するかもしれません。たとえば、SSLで仮想ホストを設定し、パスワード保護してApacheサーバーをセキュリティで保護することを試してみるか、カスタムヘッダーを追加してユーザーのリクエストを制御してみてください。
Source:
https://adamtheautomator.com/install-apache-on-ubuntu/