Edited at

ubuntuでapache2のDocumentRootを変更するまで

sphinxで作成したhtmlファイルを公開する際に

変更したapache2の設定メモ


環境

OS:Ubuntu

VERSION:16.04.5 LTS (Xenial Xerus)

apache2 ver:Apache/2.4.18 (Ubuntu)


やったこと


apache2インストール

apt-get install apache2


apache2の設定


apache2.conf

apache2.confに下記の設定を追加。


/etc/apache2/apache2.conf

ServerName hoge


hogeのところはなんでも良い

自分の作成したコンテンツのdirを指定する文も追加で記述する。


/etc/apache2/apache2.conf

<Directory "自分のコンテンツのdir">

Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>

上位の文はもともとapache2.conf内に記述されている/var/www/向けの記述をコピペして、""のところを変えただけである。


000-default.conf

000-default.confは/etc/apache2/sites-available directory内にdefaultでおいてあるvirtual hostの設定が書いてあるファイル。

今回はこのファイルをそのまま使用したため、こちらも少々変更した。

変更した場所は下記になる


/etc/apache2/sites-available/000-default.conf

DocumentRoot /var/www/html


#DocumentRoot /var/www/html
DocumentRoot "自分のコンテンツのdir"


service 再起動

/etc/init.d/apache2 restart

今回はsites-enable内で使用していた000-default.confを使用したが、新たに作成したファイルなどであると

設定ファイルを削除・適用としなければならないケースもあり。

念のためにそのコマンドも記述する。

a2dissite "sites-enable内にある.confファイル名"

a2ensite "sites-available内にある.confファイル名"
/etc/init.d/apache2 restart


今回のハマりポイント

各種qiitaの記事や、ネットの投稿をみて設定を確認したが、だいたいDocumentRootの設定のみで、apache2.conf内に節の記述を行わなければならないとは書いていなかった。

そして、localhostで動きを確かめた際に、permission errorのページが出たことから、権限周りを見ていたため問題の本質とは違うところに目をつけて試行錯誤してしまった。