LoginSignup
82
86

More than 5 years have passed since last update.

UbuntuのApache設定ファイル、どうやるんだっけ?

Posted at

UbuntuのApache設定ファイルで戸惑ったら。

Ubuntu 16.04

しばらく使ってないと、えーと、どうなってたっけ・・・とすぐ忘れるのでメモかねて。

ぱっと見わかりづらいですが面白い仕組みになってます。

まず/etc/apache2のディレクトリには***-availableと***-enabledという命名規則のディレクトリが対になってます。

1.png

そして、apache2.confはこのうち***-enabled内の.confや.loadファイルをすべて読み込むようになってます。

apache2conf-file1.png

apache2config-file2.png

見ての通り、***-enabledの中身はすべて***-available内のファイルへのシンボリックリンクです。

3.シンボリック.png

***-availableに実際の設定ファイルがあります。

ここで重要なのは、シンボリックリンクと設定ファイルは必ず同じ数だけ対になっているわけではないということです。
そしてこのシンボリックの有無がapache2.confから***-available内のファイルが読み込みに関係してきます。

つまり、設定を無効にしたければシンボリックを消せばいいわけで、逆に有効にしたければシンボリックを作成すればいいわけです。

そして、そのためのコマンドがそれぞれ用意してあります。

ディレクトリ シンボリックの削除 シンボリックの作成 説明
mods-enabled a2dismod a2enmod モジュールの設定ファイル
sites-enabled a2dissite a2ensite 仮想ホストの設定ファイル
conf-enabled a2disconf a2enconf その他設定ファイル

a2はApache2、disは無効、enは有効という意味かな・・・?
いや、知りませんよ。


例えば、

sudo vi /etc/apache2/sites-available/sample.conf

で適当な設定ファイルを書いて、

sudo a2ensite sample

を打つと、/etc/apache2/sites-enabled/sample.conf が作成されます。
これは../sites-available/sample.confへのシンボリックリンクです。。

sudo a2dissite sample

を打つと、/etc/apache2/sites-enabled/sample.conf が削除されます。


図で見たほうが一目瞭然。

a2-1.png

sudo vi sample.conf

 
a2-2.png

sudo a2ensite sample

 
a2-3.png

sudo a2dissite sample

 
後はApacheを再起動

82
86
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
82
86