Webdavフォルダをalias指定するとき

Apacheに設定したWebdavフォルダ対して、MacOSXからアクセスできるのにCentOSでアクセスできなくて半泣き。結論から言うとdavフォルダのエイリアス指定とCentOSのクライアントが原因。

apacheのconfigでwebdavフォルダを以下のようにエイリアス指定していた。

alias /dav/ /var/www/dav/data/

ログを見るとCentOSのクライアントはパスを /dav/ と指定しても、/dav でアクセスしてしまうらしい。そしてドキュメントルート下の dav というファイルを探しに行ってしまうため webdav フォルダにアクセスできないのでした。というわけで

alias /dav /var/www/dav/data

とするのが無難なようだ。

さらに、別のdavフォルダで今度はWindowsのクライアントでアクセスできずに困りました。こちらはWindowsのエクスプローラの問題らしい。digest認証で保護されたdavフォルダへの接続処理で、ユーザにhogeと指定しても勝手に domain\hoge というユーザ名で認証を試みるため、認証に失敗するようです。おそらくサーバをIISにして認証にWindowsユーザを使用すればdigest認証でも大丈夫なんだろうと思う。

そんなので今日は半日潰れました。