FreeBSD/WebDAV の変更点


*''&size(15){Apache2でWebDAVを使う};'' [#m4ca6794]

[[dokuwiki.fl8.jp転載済み>http://dokuwiki.fl8.jp/doku.php/02_freebsd/02_www/webdav]]

+[[環境>#A]]~
+[[インストール(Apache2)>#B]]~
+[[日本語対応(mod_encoding)>#C]]~
+[[http.confの修正>#D]]~
+[[Apache再起動>#F]]~

**''環境&aname(A);'' [#u9041858]
FreeBSD 6.0~
Apache 2.0.54~
~
**''インストール(Apache2)''&aname(B); [#dd269362]
Apache2からはWebDAVが標準で組み込まれているので、これを利用する。Apacheからバージョン2のApacheソースコードをダウンロードする。~
 # cd /usr/ports/www/Apache2
 # make install
~
起動
 # apachectl start
 ブラウザからIP入力するなどして、確認してみる。
~
**''日本語対応(mod_encoding)''&aname(C); [#s4cd1d49]
■[[WebDAV Resources JP>http://webdav.todo.gr.jp/download/]]よりソースとApache2用のソースをダウンロード
 # fetch http://webdav.todo.gr.jp/download/mod_encoding-20021209.tar.gz
 # fetch http://webdav.todo.gr.jp/download/experimental/mod_encoding.c.apache2.20040616
 # tar zxvf mod_encoding-20021209.tar.gz
 # cd mod_encoding-20021209
 # cp ../mod_encoding.c.apache2.20040616 mod_encoding.c
 # ./configure --with-apxs=/usr/local/sbin/apxs 
■そのままgmakeするとエラーが出るので修正
 # vi mod_encoding.c
 -------------------修正個所-----------------------
 #include <iconv_hook/iconv.h>
               ↓
 #include </usr/local/include/iconv_hook/iconv.h>
 -------------------修正個所-----------------------
■Makefileも修正
 # vi Makefile
 -------------------修正個所-----------------------
 LIBS = 
           ↓
 LIBS = -L/usr/local/lib -liconv -liconv_hook
 -------------------修正個所-----------------------
■コンパイル~
gmakeインストールでエラーが表示されるが.libs/にmod_encoding.soができているので、手動でコピーする。
 # gmake
 # gmake install
 # cp .libs/mod_encoding.so /usr/local/libexec/apache2/
 
**''httpd.confの修正''&aname(D); [#x395a1ef]
 # vi /usr/local/etc/apache2/httpd.conf
 -------------------追加個所-----------------------
 LoadModule encoding_module libexec/apache2/mod_encoding.so
 <IfModule mod_encoding.c>
   EncodingEngine on
   NormalizeUsername on
   SetServerEncoding UTF-8
   DefaultClientEncoding JA-AUTO-SJIS-MS SJIS
   AddClientEncoding "cadaver/" EUCJP
 </IfModule>
 
 DAVLockDB /tmp/DAVLock
 DAVMinTimeout 600
 Alias /webdav "/work2/webdav"
 
 <Location /webdav>
   DAV On
   Header add MS-Author-Via "DAV"
   DAVMinTimeout 1800
   Options +Indexes
   IndexOptions FancyIndexing
   AuthType Basic
   AuthName "Please Input ID and Password."    
   AuthUserfile /etc/webdav.passwd
   Require valid-user
   Order allow,deny
   Allow from all
 </Location>
  -------------------追加個所-----------------------
■使用者のIDとPaswordを追加しておく。
 # htpasswd -c /etc/webdav.passwd matsui
 New password: *****
 Re-type new password: *****
 Adding password for user matsui

**''Apache再起動''&aname(F); [#p5674e57]
 # apachectl restart

**''接続確認'' [#ifa7ea9e]
Windowsのマイネットワーク ⇒ ネットワークプレースの追加