Apache(アパッチ)は世界で一番使われているWebサーバソフトウエア(HTTPサーバー)だそうです。今回、筆者はWordpressをローカル環境に立ち上げる際にこのApacheもインストールしました。ここではその方法と併せて、いくつか問題も発生したのでその内容と解決方法も備忘録として残しておきたいと思います。
環境
OS: Ubuntu16.04LTS
インストール
公式リファレンスの通り以下コマンドでインストールできます。
$ sudo apt update
$ sudo apt -y install apache2
ところで、公式サイトの最新バージョンは上記でインストールされるaptリポジトリのバージョンとは異なっているかもしれません。
公式サイトの最新バージョンをインストールしたい場合は、ppa:https://launchpad.net/~ondrej/+archive/ubuntu/apache2を使うとできます。
以下の1行目のコマンドでppaをaptリポジトリに追加してます。
$ sudo add-apt-repository ppa:ondrej/apache2
$ sudo apt update
$ sudo apt upgrade
但し、ppaは動作保証されたものではないので、これにより発生した事故については責任を負い兼ねます。ご注意を。。
さて、このままでも接続出来ると思いますが、2つだけ設定を行います。
設定変更
(1)セキュリティ設定
security.cnfはセキュリティを設定するファイルです。
/etc/apache2/conf-enabled/security.conf
以下2箇所を変更します。
① ServerTokensの設定
25行目付近 にあると思います。このパラメータは、サーバからクライアントへの応答に、サーバー情報を含めるかどうかを設定します。
これを以下のように設定し、サーバからクライアントへの応答時に、”Server: Apache”を返すようにしました。
ServerTokens Prod
他の設定値の例を挙げると以下になります。
設定値 | 応答 |
---|---|
ServerTokens Full | Server: Apache/2.4.2 (Unix) PHP/4.2.2 MyMod/1.2 |
ServerTokens Major | Server: Apache/2 |
ServerTokens Minor | Server: Apache/2.4 |
ServerTokens Min | Server: Apache/2.4.2 |
ServerTokens OS | Server: Apache/2.4.2 (Unix) |
詳細は、公式リファレンスをご参照ください。
② ServerSignatureの設定
35行目付近にあると思います。
このパラメータはサーバーが生成するエラーメッセージ等のドキュメントのフッターを設定するもので、”On”とすると、フッターにサーバ名やバージョンが追加されます。
これにより、どのサーバからエラーが出たのがが追跡できるようになります。
今回は、セキュリティを考慮し”Off”に設定。
ServerSignature Off
詳細は、こちらの公式リファレンスをご参照ください。
(2)サーバー名の設定
apache2.conf(Apacheのメインの設定ファイル)の設定を行います。
/etc/apache2/apache2.conf
サーバーが自分自身を識別するときに使うサーバー名を設定します。
私は70行目辺りに追記しました。
ServerName "***YOUR HOST NAME***""
このパラメータを省略した場合は、サーバ(Apache)は最初にOSに問い合わせ、それが失敗した場合はシステム上のIPアドレスから逆引きによりホスト名を推測します。
公式リファレンスによると、高い信頼性を得るためにはこのパラメータを設定すべき、とのことです。
但し、運用するWebサイトが一つの場合は設定するホスト名は何でも良いそうで、動作には影響ないとのことです。
最後に、apacheを再起動します。
$ sudo systemctl restart apache2
動作確認
さて、ここまで完了したら、最後に動作確認です。/var/www/html/index.html(デフォルトで準備されているファイル)が正常に表示されるかを確認します。
ブラウザにて、http://localhost または http://127.0.0.1にアクセスします。
apacheのデフォルトページが表示されればOKです!
まとめ
Apache2のインストール方法についてまとめました。最後にapachを再起動させるのを忘れずに!