目次

Apache2 でWebサーバ

インストール

apt-get でインストール。

$ sudo apt-get install apache2

インストールしてサーバにブラウザでアクセスすると、とりあえず It work! は表示される

apache2 ディレクトリ内のファイル

/etc/apache2 ディレクトリ内のファイル

apacheのSSLを有効にする

SSLモジュールの有効化

$ sudo a2enmod ssl

/etc/apache2/sites-available/ に default-ssl が生成される。

コマンドで default-ssl を有効にすると、/etc/apache2/sites-enabled/ にシンボリックリンクが張られる。

$ sudo a2ensite default-ssl
$ ls -l /etc/apache2/sites-enabled/
total 0
lrwxrwxrwx 1 root root 26 2010-10-29 10:47 000-default -> ../sites-available/default
lrwxrwxrwx 1 root root 30 2010-10-29 12:41 default-ssl -> ../sites-available/default-ssl

SSL接続を使用するサーバの設定を行う。

$ sudo vi /etc/apache2/sites-available/default-ssl

鍵のパスを実際のパスに変える。Postfixで設置した鍵を使用。

アクセスするポートを変更した場合は、/etc/apache2/ports.conf でポート番号を変更する。

$ sudo vi /etc/apache2/ports.conf

設定に間違いがないかをチェック。

$ sudo apache2ctl configtest

こんな警告が、、、

apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1 for ServerName

どうやら

$ hostname --fqdn

とした時に、グローバルからアクセス可能なホスト名が出てこないのが原因らしい。

/etc/hosts を編集する。

$ sudo vi /etc/hosts
127.0.1.1       hostname

こんな行があるはずなので、

127.0.1.1       your.domain.com hostname

グローバルからアクセスできるホスト名を、172.0.1.1に対応する最初のホスト名として記述する。

apache再起動する。

$ sudo /etc/init.d/apache2 restart

ブラウザからアクセスできるかをチェックする。

WevDavの設定

Apache2 の WebDav モジュールを有効にする。

$ sudo a2enmod dav_fs

Webdavで使用するディレクトリを作成。所有者は www-data:www-data にする。

$ sudo mkdir -p /var/www/webdav
$ sudo chown www-data:www-data /var/www/webdav

/etc/apache2/default か default-sslに WebDav フォルダの設定を追加する。

<IfModule mod_dav_fs.c>
        Alias /dav "/var/www/webdav"
        <Location /dav>
                DAV on
                Options Indexes
                Order deny,allow
                AuthType Basic
                AuthName "Webdav"
                AuthUserFile /etc/apache2/dav.passwd
                Require valid-user
        </Location>
</IfModule>

認証用のパスワードファイルを作成する。

$ cd /etc/apache2/
$ sudo htpasswd -c ./dav.passwd hoge  ← 最初の一人のときだけ
New password:
Re-type new password:
Adding password for user hoge

-c オプションは新しくファイルを作成してしまうので、2人目以降は

$ sudo htpasswd ./dav.passwd hoge

で追加する。

パスワードファイルのパーミッションを変更。

$ sudo chown www-data:www-data ./dav.passwd
$ sudo chmod 600 ./dav.passwd

Apache2 を再起動。

$ sudo /etc/init.d/apache2 restart

ブラウザから http://your.domain.com/dav にアクセスしてチェック。

文字化け対策

以前は文字化け対策で mod-encoding をインストールしていた気がするけれど、文字化けの現象が現れないのでとりあえず放置。

参考

Ubuntu公式マニュアル