Ubuntuのapache設定コマンド

今までサーバーはCentOS系を使っていることが多かったのですが、CentOSはまぁいろいろあるので最近はUbuntuを使うようにしています。
Ubuntu Serverのapache設定はRHEL系と設定ファイルの構成がちょっと違うのでいつも戸惑っちゃいます。
ということで、設定時のコマンド忘備録を残しておきます。

apacheの設定の中身に関しては言及しません。(OSが変わっても基本同じなので)

設定変更コマンド
RHELと違う点は下記のコマンドで設定を変更する機能があります。

a2enmod モジュール有効化
a2dismod モジュール無効化
a2ensite バーチャルホスト有効化
a2dissite バーチャルホスト無効化

PHPモジュール

a2enmod/a2dismod はモジュールの読み込み設定の変更をします。たとえばrewriteを有効にするのであれば
# a2enmod rewrite
というようにします。(ただ、モジュール自体のインストールは別途aptコマンドなどで必要だと思います)
aptでモジュールをインストールしたら自動で設定しておいてくれるっぽいので普通はやらなくても大丈夫かも?

設定ファイルのフォルダ構成とコマンド

設定ファイルのフォルダ構成も結構違います。とりあえず直接いじるもののみ書いておきます。

/etc/apache2/apache2.conf メインの設定ファイル
/etc/apache2/sites-available/*.conf バーチャルホストごとの設定ファイル

全体の設定はapache2.confの方で、各サイトの設定はsites-availableフォルダに置きます。ドメイン名.confとかにしておくのが分かりやすくてよいかなと思います。
各サイトの設定ファイルはsites-availableに置いておく
例えば
/etc/apache2/sites-available/hogehoge.com.conf
とすると、下記コマンドで有効にしたり無効にしたりできる
#a2ensite hogehoge.com
#a2dissite hogehoge.com
変更後に一応再起動を忘れずに。
#systemctl reload apache2

#デフォルトで設定されている設定を無効にする場合は
a2dissite 000-default
とします。

/etc/apache2/sites-available/000-default.conf がデフォルト設定になるので、まずはこれをコピーして編集していくとよいかと思います。

ちなみに上記コマンドでは、sites-enableにシンボリックリンクが張られるようです。
sites-enableに直接書いてもダメじゃないとは思いますが、この方法のほうが、
・メンテナンス用の設定とかを作っておけばコマンド一つで切り替えられる
・古い版のconfファイルをsites-availableに残して置ける
など利点もあるかと思います。

タイトルとURLをコピーしました