概要
この記事では、Ubuntu環境に Apache HTTP Server をインストールし、以下を行います。
- Apacheのインストールと起動確認
- 簡単なWebページの表示
- VirtualHostを使った複数サイトの構築
環境
OS:Ubuntu 20.04 LTS
Webサーバー:Apache HTTP Server
Apacheバージョン:2.4系
1.Apacheインストール
sudo apt install apache2 -y
インストールが完了すると、Apacheは自動的に起動する
2.Apacheの起動確認
以下のコマンドでApacheのサービス状態を確認する
sudo systemctl status apache2
active (running) のように表示されれば問題ない

もしApacheが起動していない場合は以下のコマンドを実行する
sudo systemctl start apache2
3.ブラウザ確認
http://localhost
自分のPC(ローカル)にHTTPアクセスして構築したサーバーが利用できる状態か確認する
「Apache2 Ubuntu Default Page」のデフォルトページが表示されたら成功
表示画面

4.公開ディレクトリの確認と編集
Apacheのデフォルトの公開ディレクトリ
cd /var/www/html
中身確認する
ls
index.html が存在する
5.index.htmlの中身を上書き
Hello Worldをindex.htmlに書き込んで保存する
echo "Hello World" | sudo tee /var/www/html/index.html
ファイル内を確認する
cat /var/www/html/index.html
以下のように表示されると、ファイルが更新されている
Hello World
6.再度ブラウザでも確認
http://localhost
表示画面

Hello Worldと表示されていることが確認できる
7.自動起動設定
sudo systemctl enable apache2
再起動しても自動で立ち上がるように設定する
VirtualHostでサイト分割
VirtualHostは1台のサーバーで複数のサイトを動かす仕組み
アクセスされたURL(ドメイン名)に応じて、表示するフォルダを切り替えることができる
9.ディレクトリ作成
各サイト専用のディレクトリ(公開フォルダ)を作成する
sudo mkdir -p /var/www/site1
sudo mkdir -p /var/www/site2
10.HTML配置
各サイトの表示内容をそれぞれ作成する
site1:/var/www/site1/index.html に書き込む
site2:/var/www/site2/index.html に書き込む
echo "site1" | sudo tee /var/www/site1/index.html
echo "site2" | sudo tee /var/www/site2/index.html
11.設定ファイル作成
ドメインごとにどのディレクトリを表示するかを設定する
site1
sudo nano /etc/apache2/sites-available/site1.conf
<VirtualHost *:80>
ServerName site1.local
DocumentRoot /var/www/site1
</VirtualHost>
設定内容:site1.local にアクセスすると /var/www/site1 が表示される
site2
sudo nano /etc/apache2/sites-available/site2.conf
<VirtualHost *:80>
ServerName site2.local
DocumentRoot /var/www/site2
</VirtualHost>
設定内容:site2.local にアクセスすると /var/www/site2 が表示される
12.有効化
設定ファイルを「有効化」する
sudo a2ensite site1
sudo a2ensite site2
sudo systemctl reload apache2
13.ローカルで確認
作成したドメインに自分のPCからアクセスできるように設定する
sudo nano /etc/hosts
以下を記載する
127.0.0.1 site1.local
127.0.0.1 site2.local
14.動作確認
ブラウザで以下のURLにアクセス
http://site1.local
http://site2.local
それぞれ以下の内容が表示されれば成功
http://site1.local → site1と表示される
http://site2.local → site2と表示される
まとめ
本記事では、Ubuntu環境に Apache HTTP Server をインストールし、VirtualHostを利用して複数のWebサイトを構築しました。
Apacheの基本的なセットアップから始めて、公開ディレクトリの編集、VirtualHostの設定、サイトの有効化、hostsファイルによる名前解決まで、一連のWebサーバー構築手順を実施しています。



