久しぶりの投稿です。
Apache httpd 2.2.4 + WebDAV + mod_ssl + digest で、httpd-dav.conf の中の次の部分に注目します。
ここで、GET は、ブラウザからページを見るために除外しているのですが、OPTIONS はどうでしょうか。
試しに OPTIONS を除外しないと、
「ネットワークプレースの追加ウィザード」で、URLを指定しても、
「入力したフォルダは有効でないようです。別のフォルダを選択してください。」のメッセージがでます。
error_log には、
のようなメッセージがでます。これは、Windows XPが サーバをFrontPage Server Extension とみなすためらしいです。
mod_headers を使って、
を指定すればよいということです。これは、httpd コンパイル時に、configure のオプションで、
オプションが必要ですね。ただ試してみても、ここではうまくいきませんでした。
ちなみに、ないと言われるファイルやディレクトリを適当に作ってもエラーになるのでお手上げです。Mac ではこんなことはないのですが、Windows XP の WebDAV クライアントは不思議な仕様です。
また、前回作成したクライアント証明書の期限が切れ、そのときのエラーがどのように出るかが分かりました。
FireFox 2.0.0.2 では、「警告」ウィンドウが表示されて、「あなたの証明書の有効期限がきれているため、www.example.co.jp と暗号化された接続を確立できませんでした。」
のメッセージがでました。
InternetExplorer 6 では、「サーバーがみつかりません。」になりました。
/usr/local/httpd224/logs/error_log は、
のようになりました。その後、証明書を変えたらうまくいかなくなりいろいろ試したところ、Digest認証のウィンドウでパスワードを保存しないようにレ点をはずしたらうまくいきました。Windows XPの場合いろいろパスワードなどを溜め込んでいるいるせいでしょうか。パスワードの保存が標準というのが気になります。
また、ここで使っているSSLのクライアント認証ですが、証明書を無効にする場合「証明書の失効」をおこないますが、httpd-ssl.conf の SSLCARevocationFile の指定をやめると証明書が復活してしまうようです。この辺がはっきりしないと実際の運用で問題になりそうです。使うときは必ず検証したほうがよいですね。
Apache httpd 2.2.4 + WebDAV + mod_ssl + digest で、httpd-dav.conf の中の次の部分に注目します。
<LimitExcept GET OPTIONS> require user espiya </LimitExcept>
ここで、GET は、ブラウザからページを見るために除外しているのですが、OPTIONS はどうでしょうか。
試しに OPTIONS を除外しないと、
「ネットワークプレースの追加ウィザード」で、URLを指定しても、
「入力したフォルダは有効でないようです。別のフォルダを選択してください。」のメッセージがでます。
error_log には、
File Dose not exist: /home/data/davhome/_vti_inf.html File Dose not exist: /home/data/davhome/_vti_bin
のようなメッセージがでます。これは、Windows XPが サーバをFrontPage Server Extension とみなすためらしいです。
mod_headers を使って、
Header add MS-Author-Via "DAV"
を指定すればよいということです。これは、httpd コンパイル時に、configure のオプションで、
-enable-headers
オプションが必要ですね。ただ試してみても、ここではうまくいきませんでした。
ちなみに、ないと言われるファイルやディレクトリを適当に作ってもエラーになるのでお手上げです。Mac ではこんなことはないのですが、Windows XP の WebDAV クライアントは不思議な仕様です。
また、前回作成したクライアント証明書の期限が切れ、そのときのエラーがどのように出るかが分かりました。
FireFox 2.0.0.2 では、「警告」ウィンドウが表示されて、「あなたの証明書の有効期限がきれているため、www.example.co.jp と暗号化された接続を確立できませんでした。」
のメッセージがでました。
InternetExplorer 6 では、「サーバーがみつかりません。」になりました。
/usr/local/httpd224/logs/error_log は、
[warn] Found CRL is expired - revoking all certificates until you get updated CRL [error] Certificate Verification: Error (12): CRL has expired
のようになりました。その後、証明書を変えたらうまくいかなくなりいろいろ試したところ、Digest認証のウィンドウでパスワードを保存しないようにレ点をはずしたらうまくいきました。Windows XPの場合いろいろパスワードなどを溜め込んでいるいるせいでしょうか。パスワードの保存が標準というのが気になります。
また、ここで使っているSSLのクライアント認証ですが、証明書を無効にする場合「証明書の失効」をおこないますが、httpd-ssl.conf の SSLCARevocationFile の指定をやめると証明書が復活してしまうようです。この辺がはっきりしないと実際の運用で問題になりそうです。使うときは必ず検証したほうがよいですね。