Linux
Tips |
|
Webサーバ「lighttpd」でWebDAVを使うには
北浦訓行
2006/2/16
|
lighttpd(話題のWebサーバ「lighttpd」を使うには参照)は、WebDAVも使用できる。ここでは、Fedora Core 4でlighttpdによるWebDAVサーバの構築法を説明する。ただし、Fedora Extrasのlighttpd-1.3.16-2.fc4にはWebDAVのモジュールが含まれていないため、lighttpdのWebサイト(http://www.lighttpd.net/)からダウンロードした最新版のSRPMファイル(lighttpd-1.4.10-1.src.rpm)を使ってRPMファイルを作成する。SRPMからRPMファイルを再構築する理由は、RPMファイルのlighttpdはSSLがオフの状態でコンパイルされているためだ。
lighttpd-1.4.10-1.src.rpmをダウンロードしたら、以下のコマンドでSSLを有効にしてRPMファイルを作成する。
# rpmbuild --rebuild --with ssl lighttpd-1.4.10-1.src.rpm |
/usr/src/redhat/RPMS/i386にlighttpd-1.4.10-1.i386.rpmが作成されたら、それをインストールする。yumコマンドでFedora Extrasのlighttpdをインストールしている場合は、removeしておく必要がある。念のため、/etc/lighttpd/lighttpd.confをバックアップしておく。
# cp /etc/lighttpd/lighttpd.conf /etc/lighttpd.conf.org
# yum remove lighttpd lighttpd-fastcgi
(省略)
Is this ok [y/N]: y ←「y」を入力して[Enter]キー
# rpm -Uhv lighttpd-1.4.10-1.i386.rpm |
次に、SSL関連(Webサーバ「lighttpd」でSSLを使うには参照)とDigest認証(lighttpdでユーザー認証を行うには(Digest認証編)参照)の設定を行う。
サーバ証明書は、/etc/lighttpd/sslディレクトリを作成して、そこに置くことにする。
# mkdir -p /etc/lighttpd/ssl
# cd /etc/lighttpd/ssl
# openssl req -new -x509 -keyout server.pem -out server.pem -days 365 -nodes
(省略)
-----
Country Name (2 letter code) [GB]:JP ←2文字国名(JP)
State or Province Name (full name) [Berkshire]:Tokyo ←都道府県
Locality Name (eg, city) [Newbury]:Chiyoda ←区市町村
Organization Name (eg, company) [My Company Ltd]:Example Corp. ←組織名
Organizational Unit Name (eg, section) []:Example Dept. ←部署名
Common Name (eg, your name or your server's hostname) []:Noriyuki
Kitaura ←担当者名またはサーバ名など
Email Address []:kitaura@example.co.jp ←メールアドレス |
続いて、htdigestコマンドで認証用のユーザー(ここでは「secret」)を作成し、パスワードを設定する(レルムは「WebDAV」)。
# cd /etc/lighttpd
# htdigest -c lighttpd.user.htdigest "WebDAV" secret
Adding password for secret in realm WebDAV.
New password: ←パスワードを入力
Re-type new password: ←パスワードを再入力 |
それから、WebDAV用のディレクトリを作成する。ここでは、yumコマンドでlighttpdをインストールしたときの/srv/www/lighttpdディレクトリの下に、davというサブディレクトリを作成することにする。また、書き込み可にするために、書き込み属性を設定しておく。
# mkdir -p /srv/www/lighttpd/dav
# chmod 777 /srv/www/lighttpd/dav |
最後にlighttpdの設定ファイル(/etc/lighttpd/lighttpd.conf)を編集する。/etc/lighttpd/lighttpd.confが存在しない場合は、バックアップからコピーするか、/usr/share/doc/lighttpd-1.4.10/lighttpd.confをコピーする。
server.modules = (
(省略)
"mod_fastcgi",
(省略)
"mod_cgi",
(省略)
"mod_webdav",
"mod_accesslog" )
## a static document-root, for virtual-hosting take look at the
## server.virtual-* options
server.document-root = "/srv/www/lighttpd/"
## where to send error-messages to
server.errorlog = "/var/log/lighttpd/error_log"
#### SSL engine ←SSLの設定
ssl.engine = "enable"
ssl.pemfile = "/etc/lighttpd/ssl/server.pem"
#### auth module ←Digest認証の設定
## read authentication.txt for more info
auth.backend = "htdigest"
auth.backend.htdigest.userfile = "/etc/lighttpd/lighttpd.user.
htdigest"
auth.require = ( "/dav/" =>
(
"method" => "digest",
"realm" => "WebDAV",
"require" => "valid-user"
)
)
$HTTP["url"] =~ "^/dav($|/)" { ←WebDAVの設定
webdav.activate = "enable"
# webdav.is-readonly = "enable"
} |
以上で設定は完了だ。lighttpdを起動して、動作を確認する。lighttpdの起動時にPEMパスフレーズの入力を求められたら、パスフレーズを入力して[Enter]キーを押す。
# service lighttpd start
lighttpd を起動中: Enter PEM pass phrase: ←パスフレーズを入力 |
WebDAVサーバにアクセスする方法は、WebDAVサーバにアクセスするにはを参照。ただし、Fedora Core 4のGNOMEではアクセス方法が変わっているため、Fedora Core 4でWebDAVサーバにアクセスするにはを参照。
Linux Squareフォーラム Linux Tipsカテゴリ別インデックス |
Linux & OSS 記事ランキング
本日
月間