Apache は、によって開発されたオープンソースの無料のWebサーバーソフトウェアです。 Apache ソフトウェアファンデーション。 正式に呼ばれています Apache HTTPサーバー。 Apache は最も古いクロスプラットフォームのWebサーバーの1つであり、初心者向けです。
このチュートリアルでは、インストールします Apache バージョン2 (Apache2)オン Ubuntu 20.04。 さらに、単一のサーバーで複数のWebサイトをホストできるように仮想ホストを構成します。
Ubuntu20.04にApache2をインストールします
まず、以下のコマンドでパッケージの更新を確認します。
$ sudo aptアップデート
次に、次のコマンドを実行してインストールします Apache Ubuntuパッケージリポジトリのバージョン2。
$ sudo apt install apache2
プロンプトが表示されたら、次のように入力します Y インストールを続行します。
Apache2が正常にインストールされたら、次のコマンドを実行してバージョンを確認します。
$ apache2 -v
Apache2サーバーのステータスを確認する
次に、以下のコマンドを実行して、Apache2サーバーのステータスを確認します。
$ sudo systemctl status apache2

デフォルトでは、Apache2サービスはすでにアクティブ(実行中)になっているはずです。 そうでない場合は、次のコマンドでサービスを開始します。
$ sudo systemctl start apache2
Apache2Webサーバーをテストします
最後のステップは、Apache2Webサーバーをテストすることです。 好みのWebブラウザーを開き、UbuntuサーバーのIPアドレスを入力します。 または入力します ローカルホスト サーバーにローカルに接続している場合。
次の画像に示すように、Apache2Ubuntuのデフォルトページが表示されます。

に代わって Apache Software Foundation、Apache2へようこそ!
Apache2で仮想ホストを構成する
仮想ホストを使用すると、同じApache2サーバーで複数のWebサイトをホストできます。 一方、Nginxではサーバーブロックとして名前が付けられています。
デフォルトでは、Apache2には1つの仮想ホストが付属しており、その構成情報はに保存されます。 /etc/apache2/sites-enabled/000-default.conf。 また、デフォルトのWebサイトルートは / var / www / html。
新しい仮想ホストの構成は簡単です。 にとって example、次の手順を実行して、www.cloudindevs.comにある自分のWebサイトの仮想ホストを構成します。 あなたは従い、単に置き換えることができます cloudindevs あなた自身の登録されたドメイン名で。
ノート: 登録したドメイン名は、UbuntuサーバーのIPアドレスを指している必要があります。
仮想ホストを作成する
次のようにデフォルトのファイルをコピーして、新しい仮想ホスト構成ファイルを作成します。
$ cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/cloudindevs.conf
その後、以下のコマンドでデフォルトの仮想ホストを無効にします。
$ sudo a2dissite 000-default.conf
ドキュメントのルートディレクトリを作成します
次のコマンドを実行して、Webサイトファイルを保存するドキュメントルートディレクトリを作成します。
$ sudo mkdir / var / www / cloudindevs
次に、次のように、Apache2サービスのユーザーアカウント(www-data)とグループ(www-data)をドキュメントルートディレクトリの所有者にします。
$ sudo chown www-data:www-data / var / www / cloudindevs
さらに、次のコマンドを使用して、Apache2サービスユーザーアカウント(www-data)にドキュメントルートディレクトリへのフルアクセスを許可します。
$ sudo chmod 755 / var / www / cloudindevs
ウェブサイトのインデックスファイルを作成する
次に、ドキュメントのルートディレクトリに次のインデックスファイルを作成します。
$ sudo nano /var/www/cloudindevs/index.html
以下のサンプルHTMLコードをコピーして貼り付けます。
<!DOCTYPE html>
<html>
<head>
<title>Welcome to Cloudindevs!</title>
<style>
body {
width: 35em;
margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif;
}
</style>
</head>
<body>
<h1>Welcome to Cloudindevs!</h1>
<p>If you see this page, the Cloudindevs website is working correctly!</p>
</body>
</html>
Save と close index.htmlファイル。
仮想ホスト構成を編集します
次に、次のコマンドを使用して、新しい仮想ホスト構成ファイルを編集します。
$ sudo nano /etc/apache2/sites-available/cloudindevs.conf
ここで、で始まる行のコメントを解除します サーバーネーム その後、交換します www。example。と 実際のウェブサイトのURLを使用します。 また、交換してください / var / www / html 新しいドキュメントルートパスを使用します。
以下は、変更を加えた後に予想されるもののサンプルです。
<VirtualHost *:80>
ServerName www.cloudindevs.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/cloudindevs
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Save と close 仮想ホスト構成ファイル。
Apache2仮想ホストを有効にする
Apache2仮想ホストを有効にするには、以下のコマンドを実行します。
$ sudo a2ensite cloudindevs.conf
最後に、Apache2Webサーバーを次のコマンドで再起動します。
$ sudo systemctl restart apache2
確かに、下の画像に示すように、私の新しいWebサイトにはwww.cloudindevs.comからアクセスできます。

管理する基本的なコマンド Apache HTTPサーバー
結論として、ここにいくつかの基本的なものがあります systemctl Apache2Webサーバーの管理に役立つコマンド。
つかいます 再起動 Apache2サービスを停止してから、再開します。
$ sudo systemctl restart apache2
使用 リロード サービスを停止せずに構成ファイルをリロードするようにApache2に指示するオプション。
$ sudo systemctl reload apache2
を実行します 止まる Apache2サービスを停止するコマンド。
$ sudo systemctl stop apache2
に 有効 サーバーの起動時に起動するApache2サービスは、次のコマンドを実行します。
$ sudo systemctl enable apache2
Apache2ヘルパー
a2ensity -apache2サイトまたは仮想ホストを有効にします。
$ sudo a2ensite cloudindevs.conf
a2dissite -apache2サイトまたは仮想ホストを無効にするために使用されます。
sudo a2dissite cloudindevs.conf
基本的なApache2設定とログファイル
構成ファイル
/etc/apache2/apache2.conf –Webサーバーの起動時に他のすべての構成ファイルから情報を取得するメイン構成ファイル。
/etc/apache2/ports.conf -着信接続のリスニングポートを定義します。
/ etc / apache2 / mods-有効 -モジュールを管理するための構成情報が含まれています。
/ etc / apache2 / conf-有効 -いくつかのグローバル構成情報が含まれています。
/ etc / apache2 / sites-利用可能 -仮想ホスト構成を格納します。
/ etc / apache2 / sites-enabled -有効な仮想ホストを定義します。
ログファイル
/var/log/apache2/error.log –Apache2で発生したエラーに関する情報が含まれています。
/var/log/apache2/access.log –Apache2によって処理されたすべてのリクエストが含まれます。
結論
このガイドでは、 Apache Ubuntu20.04上の仮想ホストと一緒にHTTPサーバー。 さらに、Apache2を管理するためのいくつかの便利なコマンドを調べました。 最後に、Apache2で使用される重要な構成とログファイルについて簡単に説明しました。