WebDAVとディレクトリの設定
WebDAVを使うときはディレクトリの設定に気を付けなはれやという話。
Apache2を使っているという前提で話を進めます。/etc/apache2/apache2.conf かそれに連なるファイルに然るべき設定をして、いざアクセスしてみると PROPFINDが405と怒られた。
設定としては、今までWebDAVでやってたのと変わらないしオカシイなと思っていたら、怒られたディレクトリには index.html が存在している。試しにリネームしてみると普通にアクセスできる。およよ...
どうやら、デフォルトのmoduleである mod_dir がWebDAVのルートディレクトリへのアクセスを index.html にリダイレクトして405エラーが出ていた模様。a2dismod dir で mod_dir を無効化しようとしたら、「このモジュールはエッセンシャルだから無効化するのはオススメしないよ?」と端末が言ってきたのでWebDAVでアクセスするルートディレクトリの設定で mod_dir を部分的に無効化した。(上流のディレクトリがAllowOverride Allであることを確認してね)
<Directory /webdav> DAV on DirectoryIndex Options -Indexes </Directory>
もちろん、.htaccessに書いてもOK。
同じ理屈で、『このディレクトリにアクセスがあったら、どこか違うページにリダイレクトする』といったような mod_rewrite の設定があってもエラーをもらうので設定には注意が必要なのです!