Amazon Linux (EC2) 1
Amazon Linux (EC2) 1:
本ハンズオンは3部構成となっています。
Amazon Linux (EC2) 1
Amazon Linux (RDB) 2
Amazon Linux (WordPress) 3
AWS EC2 のセキュリティグループでインバウンド80番ポートがを空けておいてください。
詳細は Amazon EC2 セキュリティグループ をご覧ください。
yum で色々アップデートしておきましょう。(Windows アップデートみたいなものです)
whois コマンドと、データベース接続時に必要なmysql クライアントを入れておきます。
Amazon Linux の yum では「PHP はApache のモジュール(部品)」という扱いなので、PHP をインストールしようとするとyum が気を利かせてApacheも入れてくれます。
ちなみにこれは、Amazon Linuxの場合で、Amazon Linux2の場合は上手く行きませんでした。
ちなみにバージョンを確認してみると、↓
次に、Apacheが自動起動してくるようにしておきましょう。
自動起動になっているか確認してみましょう。3:onになっていればOK。
「http://自分のドメイン/」を開いてみましょう。
あれ、表示されない。
リブートしてみよう。
表示された!
1.バーチャルホストとは?
1 台のサーバ上で2 つ以上のウェブサイトを扱う運用方法のことです。
サーバ1 台にウェブサイト1 つだけであればバーチャルホストにする必要はあまりないのですが、バーチャルホストの作り方を覚えておけば後で「サブドメインで別のサイトを作ってみよう」と思ったときに役立つはずです。
2.設定
Apache の大本となる設定ファイルは「/etc/httpd/conf/httpd.conf」です。
350 行以上あるのでtail コマンドを使って最後の5 行だけ確認してみましょう。
IncludeOptional conf.d/.conf
とあるため大本の設定ファイルの中で、
さらに「conf.d」というディレクトリ内の「.conf」というファイルをインクルード(取り込み)していることが分かります。
でもいきなり「conf.d/.conf」と書かれてもどこの「conf.d/.conf」を指しているのかよく分かりませんよね。
「conf.d」より上のディレクトリはどこで指定しているのか、grep で探してみましょう。
ServerRoot "/etc/httpd"
ServerRootではベースとなるディレクトリを指定しています。
これで「conf.d/.conf」が実際は「/etc/httpd/conf.d/.conf」であることが分かりました。
では自分のドメインのサイト用にバーチャルホストを「/etc/httpd/conf.d」の下で作成してみましょう。
vi コマンドで新しい設定ファイルを作ります。
↓のファイルを書き込みます。
catコマンドで中身を確認しましょう。
3.構文チェック
apachectlコマンドで、構文チェックをします。
ディレクトリが存在しない?
ということで、↓4.へ。
ドキュメントルートとは?
「サイトにアクセスしたらここに置いたファイルが表示されるよ」というディレクトリのことです。
mkdir コマンドでディレクトリを作成します。
lsコマンドでも作成されたか確認してみましょう。
改めて、apachectlコマンドで構文チェックをしましょう。
ドキュメントルートを用意しましたが、何かしらコンテンツを置いておかないと「404 Not Found」になってしまいアクセスできません。
vi コマンドでドキュメントルートの下にindex.html のファイルを作成します。中身は適当に書いて保存してください。
バーチャルホストの設定を有効にするため、apachectlコマンドでApache を再起動しておきましょう。
curl:「ターミナルにおけるブラウザ」のようなコマンドです。
本ハンズオンは3部構成となっています。
Amazon Linux (EC2) 1
Amazon Linux (RDB) 2
Amazon Linux (WordPress) 3
AWS EC2 のセキュリティグループでインバウンド80番ポートがを空けておいてください。
詳細は Amazon EC2 セキュリティグループ をご覧ください。
1.Apacheなどをインストールする
yum で色々アップデートしておきましょう。(Windows アップデートみたいなものです)yum update -y
whois コマンドと、データベース接続時に必要なmysql クライアントを入れておきます。
yum install -y jwhois mysql
Amazon Linux の yum では「PHP はApache のモジュール(部品)」という扱いなので、PHP をインストールしようとするとyum が気を利かせてApacheも入れてくれます。
ちなみにこれは、Amazon Linuxの場合で、Amazon Linux2の場合は上手く行きませんでした。
yum install -y php72 php72-mbstring php72-mysqlnd
ちなみにバージョンを確認してみると、↓
次に、Apacheが自動起動してくるようにしておきましょう。
chkconfig --add httpd
chkconfig httpd on
自動起動になっているか確認してみましょう。3:onになっていればOK。
chkconfig --list httpd
2.WEBブラウザで表示してみよう
「http://自分のドメイン/」を開いてみましょう。あれ、表示されない。
リブートしてみよう。
reboot
表示された!
3.バーチャルホストを作ってみよう
1.バーチャルホストとは?1 台のサーバ上で2 つ以上のウェブサイトを扱う運用方法のことです。
サーバ1 台にウェブサイト1 つだけであればバーチャルホストにする必要はあまりないのですが、バーチャルホストの作り方を覚えておけば後で「サブドメインで別のサイトを作ってみよう」と思ったときに役立つはずです。
2.設定
Apache の大本となる設定ファイルは「/etc/httpd/conf/httpd.conf」です。
350 行以上あるのでtail コマンドを使って最後の5 行だけ確認してみましょう。
tail -5 /etc/httpd/conf/httpd.conf
IncludeOptional conf.d/.conf
とあるため大本の設定ファイルの中で、
さらに「conf.d」というディレクトリ内の「.conf」というファイルをインクルード(取り込み)していることが分かります。
でもいきなり「conf.d/.conf」と書かれてもどこの「conf.d/.conf」を指しているのかよく分かりませんよね。
「conf.d」より上のディレクトリはどこで指定しているのか、grep で探してみましょう。
grep "^ServerRoot" /etc/httpd/conf/httpd.conf
ServerRoot "/etc/httpd"
ServerRootではベースとなるディレクトリを指定しています。
これで「conf.d/.conf」が実際は「/etc/httpd/conf.d/.conf」であることが分かりました。
では自分のドメインのサイト用にバーチャルホストを「/etc/httpd/conf.d」の下で作成してみましょう。
vi コマンドで新しい設定ファイルを作ります。
vi /etc/httpd/conf.d/start-aws-virtualhost.conf
↓のファイルを書き込みます。
<VirtualHost *:80>
DocumentRoot "/var/www/start-aws-documentroot"
ServerName www.自分のドメイン
ErrorLog "logs/start-aws-error.log"
CustomLog "logs/start-aws-access.log" combined
<Directory "/var/www/start-aws-documentroot">
AllowOverride All
</Directory>
</VirtualHost>
catコマンドで中身を確認しましょう。
cat /etc/httpd/conf.d/start-aws-virtualhost.conf
3.構文チェック
apachectlコマンドで、構文チェックをします。
apachectl configtest
ディレクトリが存在しない?
ということで、↓4.へ。
4.ドキュメントルートを作成
ドキュメントルートとは?「サイトにアクセスしたらここに置いたファイルが表示されるよ」というディレクトリのことです。
mkdir コマンドでディレクトリを作成します。
mkdir /var/www/start-aws-documentroot
lsコマンドでも作成されたか確認してみましょう。
ls -l /var/www/
改めて、apachectlコマンドで構文チェックをしましょう。
apachectl configtest
5.index.htmlをおく
ドキュメントルートを用意しましたが、何かしらコンテンツを置いておかないと「404 Not Found」になってしまいアクセスできません。vi コマンドでドキュメントルートの下にindex.html のファイルを作成します。中身は適当に書いて保存してください。
vi /var/www/start-aws-documentroot/index.html
バーチャルホストの設定を有効にするため、apachectlコマンドでApache を再起動しておきましょう。
apachectl restart
6.curlコマンドで確認する
curl:「ターミナルにおけるブラウザ」のようなコマンドです。curl "http://自分のドメイン"
コメント
コメントを投稿