はじめに
EC2でAmazon Linux 2 のVirtualHostの構築をしてみた。
今回はドメインについてはローカルPCのhostsを直接変更する手順にします。
※今回ドメイン名は例のexample.comを使用します。
手順はchatGPTに聞いたものです。
前提条件
EC2を構築済みであること
手順
サーバーにSSH接続する
rootに昇格する
$ sudo su -
yum updateを実施する
今回はupdateするパッケージがありませんでした。
# yum update
No packages marked for update
apacheのパッケージをインストールする
# yum install httpd
apacheのサービスを起動する
# systemctl start httpd
apacheのサービスの自動起動を有効かする
# systemctl enable httpd
example.comのディレクトリを作成する
# mkdir -p /var/www/example.com/public_html
フォルダの権限を変更する
# chmod -R 755 /var/www
仮のHTMLファイルを作成する
# echo "<html><body><h1>example.com</h1></body></html>" | sudo tee /var/www/example.com/public_html/index.html
ディレクトリの所有ユーザー:所有グループを変更する
# chown -R apache:apache /var/www/example.com/public_html
example.comのapacheの設定ファイルを作成する
# vi /etc/httpd/conf.d/example.com.conf
<VirtualHost *:80>
ServerAdmin webmaster@example.com
ServerName example.com
ServerAlias www.example.com
DocumentRoot /var/www/example.com/public_html
ErrorLog /var/log/httpd/example.com-error.log
CustomLog /var/log/httpd/example.com-access.log combined
</VirtualHost>
apacheの文法チェックをする。
# httpd -t
Syntax OK
apacheのサービス再起動をする
# systemctl restart httpd
hostsファイルを編集する
# vi /etc/hosts
10.0.11.196は私の環境のEC2プライベートIPアドレスです
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost6 localhost6.localdomain6
10.0.11.196 example.com
自分のPCのhostsファイルを変更する
C:\Windows\System32\drivers\etc移動してhostsファイルをコピーして
別フォルダにhostsを格納して赤枠の部分「EC2のグローバルIPアドレス ドメイン」を追加する。
上書きでC:\Windows\System32\drivers\etc配下のhostsファイルを変更する
apacheのサービスを再起動する
# systemctl restart httpd
apacheのログファイルが出力されていることを確認した
# cd /var/log/httpd
[root@ip-10-0-11-196 httpd]# ls -tlr
total 12
-rw-r--r-- 1 root root 429 Jun 16 11:25 access_log
-rw-r--r-- 1 root root 0 Jun 16 11:25 example.com-error.log
-rw-r--r-- 1 root root 1845 Jun 16 11:25 error_log
-rw-r--r-- 1 root root 397 Jun 16 11:25 example.com-access.log
# cat example.com-access.log
[root@ip-10-0-11-196 httpd]# cat example.com-access.log
自分のIPアドレス - - [16/Jun/2024:11:25:23 +0000] "GET /index.html HTTP/1.1" 200 47 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36"
まとめ
仮にサーバーを立てる際に本番環境のため、Route53にてドメインの登録ができない場合に
自分のPCのC:\Windows\System32\drivers\etc配下のhostsファイルにIPアドレスとドメインを設定してアクセスできるようにする方法があります。
ドメイン登録できない環境の方はぜひこのやり方があることを頭に入れてください。