The requested URL /_vti_bin/shtml.exe/_vti_rpc was not found on this server.
WebDav接続を(httpで)Windowsクライアントから接続しようとすると上記のエラーが出る。
apache1.3.37でDigest認証を行う必要が出てきたのでその設定のメモをちょこっと。。。
通常、httpsプロトコルでWebDavに接続する場合は別にDigest認証でなくてもBasic認証で良いが
httpプロトコルでWebDavに接続する場合パケットは盗聴されたとしてもパスワードを解析しにくいそうです。
この件に関して実際に参考文献はたくさんあるのでググってみてね(^^;
さて本題です。。。
#cd /etc/httpd/modules
#ls
とやるとmod_auth_digest.soはあるんだけどデフォルトでどうやら使えないようになっている。
/etc/httpd/conf/httpd.confにも
LoadModule digest_auth_module modules/mod_auth_digest.so
これはない。
rpmでapache1.3.37を導入した環境でとりあえずapache_1.3.39.tar.gzをwgetして解凍。
リビルトしコンパイル。
#cd /usr/local
#wget http://www.meisei-u.ac.jp/mirror/apache/httpd/apache_1.3.39.tar.gz
#tar zxvf apache_1.3.39.tar.gz
#cd apache_1.3.39/src/modules/experimental
#which apxs
/usr/sbin/apxs(ここにapxsがあるのを確認)
#/usr/sbin/apxs -c -D DEV_RANDOM mod_auth_digest.c
#/usr/sbin/apxs -i mod_auth_digest.so
ここまでやるとmod_auth_digest.soが/etc/httpd/modulesにコピーされているはず。
LoadModule の最後の方に
LoadModule digest_auth_module modules/mod_auth_digest.so
AddModuleの最後の方に
AddModule mod_auth_digest.c
を追記し有効に。。。
service httpd restart
で有効になった。
アクセス可能ユーザーのパスワードを作成
#cd /pass_directory
#htdigest -c .htdigest 'Secret Zone' secret
Adding password for mediacreate in realm Secret Zone
New password:
Re-type new password:
Basic認証と一緒でパスワードを二回聞かれます。
どこのディレクトリをDigest認証をかけるのかをhttpd.confでちゃんと指定してやらなきゃ・・・
#vi /etc/httpd/conf/httpd.conf
<Directory "/var/www/html/member">
AuthType Digest
AuthName "Secret Zone"
AuthDigestDomain /member/
AuthDigestFile /pass_directory/.htdigest
Require user secret
</Directory>
っで。。。Apacheの再起動でパスワードユーザーを反映。
#service httpd restart
以上でDigest認証が有効になりました。
Cannot remove module mod_auth_digest.c: not found in module list
こんなエラーが出た場合はちゃんと下記の二行が追記されているのかもう一度確認する。
LoadModule digest_auth_module modules/mod_auth_digest.so
AddModule mod_auth_digest.c
また、コンパイル時に
#/usr/sbin/apxs -c -D DEV_RANDOM mod_auth_digest.c
とせず
#/usr/sbin/apxs -i ./mod_auth_digest.so
としただけだとエラーになるので注意っす。
もう一回再コンパイルした方が良いかもです。
コメント (1)
rpmでapache1.3.37を導入した環境でとりあえずapache_1.3.39.tar.gzをwgetして解凍。
この箇所は間違いですね(^^;
Digest: user password mismatch
このエラーが頻発します(^^;
ソースをインストールされているものと合わせてとりあえず解消?していますが
WebDavでFile does not exist: のエラーが頻発します(^^;
ファイルは存在しているのになぁ(´・ω・`)
投稿者: NOCCHI | 2008年01月23日 01:28
日時: 2008年01月23日 01:28