2008年5月4日日曜日

■WebDAVテスト設定の顛末

WebDAV ローカルでの設定テスト とりあえず成功しました。

とりあえずのメモですが、成功した部分について、失敗例も含めてメモしておきます。

Ubuntuサーバ構築ガイドを参考にして、UbuntuServer8.04+WebDAVの設定を試みました。

# cd /etc/apache2/
# nano httpd.conf
ここにデフォルトで何も記述がありませんでした。

で、どうしてだろう・・・何も初期設定がないのか、もしくは雛形をコピーするべきなのかなどいろいろ悩み抜きました。
とりあえず/usr/share/doc/apache2.2-common/examples/apache2/original/httpd.conf.gz
に雛形らしきファイル見つけたのですが、これをどのように扱えば良いのか・・・見当がつかないまま時間が過ぎてしまいました。

で、とりあえずホームページ更新用ディレクトリに所有権の変更を行います
# cd /var
# chown -R www-data:www-data www

  /var/www/ 所有権はwww-data     管理者用

さらに外部との共有用にディレクトリをあらたにつくりました。
# cd /home
# mkdir -m 755 www-data
# chown -R www-data:www-data www-data
www-dataディレクトリを作成し、所有を変更しておきました。

  /home/www-data/ 所有権はwww-data  外部公開用


その後、考え抜いた末(考え抜くより他に方法あったのかも知れないですけれど)
httpd.confに記述することを決めました。
この根拠は、apache2.2ではメインの設定はapache2.confにて設定し、
よく変更する部分はhttpd.confに記述するようになっているというものでした。
ならば、元々httpd.confは空のはず。勝手に思いこんで、とにかく記述を試みました。
以下の通りです。

DAVLockDB /tmp/DAVLock
DAVMinTimeout 600
DAVDepthInfinity on
# ファイル共有 share の定義で、外部にも公開するディレクトリです
#URLはhttp://192.168.1.2/shareとしてアクセス
#任意のクライアントから自由にアクセスOK
Alias /share /home/www-data
DAV on
AllowOverride None
Options None

# http サーバのドキュメントルート ホームページ更新用です 
#URLはhttp://192.168.1.2/wwwとしてアクセス
#ユーザ名はwww-dataとしてユーザー認証する
Alias /www /var/www
DAV on
AllowOverride None
Options None
AuthType Basic
AuthName "User www-data only"
AuthUserFile /var/log/apache2/password
Require user www-data

以上を何も記述のないhttpd.confファイルにいきなり書き足しました。

次に、リンクを作成します。
# cd /etc/apache2/mods-enabled
ln -s /etc/apache2/mods-enabled/dav.load
ln -s /etc/apache2/mods-enabled/dav_fs.conf
ln -s /etc/apache2/mods-enabled/dav_fs.load
ln -s /etc/apache2/mods-enabled/auth_dbm.load
最後の行はユーザ認証のリスト追加だそうですが、この部分だけエラーが出ました。
なので、このファイルは削除しました。
本当はどうすべきなのか検討課題です。

次にapache2の再起動を実行します。
# cd /etc/apache2
# /etc/init.d/apache2 restart
これで一応サーバの方はエラーは出ず。

次にクライアントPCにてネットワークプレースを導入します。
マイコンピュータを右クリックして、ドライブの割り当てを選択
追加ウイザードでそのまま進み、ネットワーク プレースの場所を入力する画面で
http//192.168.1.2/shareと打ち込んで進みます。
すると、WebDAVにてサーバとつながる記述が生成されます。
このときに最後パスワード入力がなかったので、ユーザ認証がなされていないことがわかります。
これは次回以降の検討課題です。

これで\\192.168.1.2\shareでつながりました。
テキストで英文字を作成。
日本文字も入れました。
サーバにて/home/www-dataの中にクライアントで作成したファイルがありました。
これをnanoで開くと、日本文字だけは文字化けでした。
しかしそれ以外は通信できてるようでした。

以上ここまで

課題
  1. httpd.confはデフォルトでデータ無しだったが、雛形を利用すべきなのかどうか
  2. ユーザ認証のリストがエラーになったが、どうすべきなのか。
  3. ネットワークプレースの生成最後でパスワードによるユーザ認証がなかった。
  4. 日本語によるテキストが文字化けしたがどうすればよいのか。

0 件のコメント: