Lから始まるLinux

6章15話
ClamAV
6章16話 Apache HTTP Server
もくじ
6章17話
Postfix
Apache HTTP Server
若木 みどり
お兄ちゃん! ブラウザで見るページって サーバで公開されているんだよね? 同じようにページを公開できるのかな?
若木 しげる
もちろん! そのようなサーバを HTTP サーバと呼ぶよ 今回は代表的な HTTP サーバ Apache HTTP Server を扱おう!
インストール
若木 しげる
パッケージ名は ディストリビューションによって異なり apache2httpd となっているよ パッケージ管理システムから 検索してインストールしよう
sudo apt install -y apache2
若木 みどり
うん!終わったよ!
設定
若木 しげる
次は設定ファイルを確認しようapache2.confhttpd.conf などになっているんだ
若木 しげる
設定ファイルの場所が分からなければfind で検索してみよう
sudo find /etc -name apache2.conf -o -name httpd.conf
若木 みどり
うん!試してみるね!
/etc/apache2/apache2.conf
若木 みどり
私の場合は/etc/apache2/apache2.conf みたいだね!
若木 しげる
今回は設定を変更しないけど設定を書き換えた場合は間違った記述がないか設定ファイルの書式チェックを行おう以下のようにすると確認できるよ!
apachectl configtest
若木 しげる
次に設定ファイルの中からDocumentRoot という記述を探そうその場所に HTTP サーバが公開するファイルが配置されているんだ
grep 'DocumentRoot' /etc/apache2/apache2.conf
若木 みどり
実行して確認するよ!
DocumentRoot "/var/www/html"
若木 みどり
設定されている値は/var/www/htmlなっているみたい
若木 しげる
そこのディレクトリでHTML ファイルを公開しているね/var/www/html 直下にHTML ファイルを作ろう
sudo bash -c 'cat > /var/www/html/sample.html << \EOF
<!DOCTYPE html>
<html>
  <head>
    <title>私のページ</title>
  </head>
  <body>
    <h1>自分のウェブページへようこそ!</h1>
  </body>
</html>
EOF'
若木 みどり
うん!HTML ファイルを配置したよ!
起動
若木 しげる
いよいよ起動だよ!デーモンを動かし自動起動を有効にしよう!
sudo systemctl enable --now apache2
若木 しげる
問題なく起動したかどうかは以下で確認しよう!
systemctl status apache2
若木 みどり
エラーなく起動したみたい!さっそく確認してみようよ!
若木 しげる
作成した sample.html以下の URL からアクセスできるよブラウザから見てみよう!
http://サーバのIPアドレス/sample.html
若木 みどり
IP アドレスを調べるにはip addr show だよね!結果は 192.168.0.100 だったよ!
若木 みどり
ということはブラウザから以下の URL にアクセスすればいいんだ!
http://192.168.0.100/sample.html
若木 みどり(驚き)
…おお!自分が作ったページが表示されている!
若木 しげる
アクセスできない場合はファイアウォールで防がれている可能性があるよディストリビューションによって異なり設定も難しい場合が多いのでここでの説明は省略するね
まとめ
若木 みどり
今回は Apache HTTP Server を扱ったよ!HTML ファイルを公開してブラウザから見れるようになるんだ!
若木 しげる
今回は基礎的な使い方のみ扱ったけど学ぶべきことはたくさんあるんだ例えば、暗号化された安全な HTTPS 接続やプログラムに HTML を生成させる動的ページなどがあるよこの分野に興味があるのなら書籍などの教材を用意して取り組んでみよう!