ねもぷらす

ふぁいんでぃんぐねもの日記。プログラミングとか育児とか

WebDAV導入

気が向いてしまったら、すかさず実施。


参考URL
http://49uper.com/memo/linux/webdav.html
http://www.stackasterisk.jp/tech/systemConstruction/apache11_03.jsp

  • openssl install
$ cd /usr/local/src/
$ wget http://www.openssl.org/source/openssl-0.9.8a.tar.gz
$ tar xzvf openssl-0.9.8a.tar.gz
$ cd openssl-0.9.8a
$ su
# ./config -fPIC shared
# make
# make install
# vi /etc/ld.so.conf
---
+ /usr/local/ssl/lib
---
# ldconfig
# exit
  • Apache2 install
$ cd /usr/local/src/
$ wget http://www.apache.jp/dist/httpd/httpd-2.0.55.tar.gz
$ tar xzvf httpd-2.0.55.tar.gz
$ cd httpd-2.0.55
$ ./configure \
--enable-modules="so ssl" \
--with-ssl=/usr/local/ssl \
--enable-dav \
--enable-headers \
--enable-so
$ su
# make
# make install
# exit
  • WebDAV環境構築
    • 文字化けの回避
# exit
$ wget http://webdav.todo.gr.jp/download/mod_encoding-20021209.tar.gz
$ wget http://webdav.todo.gr.jp/download/experimental/mod_encoding.c.apache2.20020611a
$ tar zxvf mod_encoding-20021209.tar.gz
$ su
# cd mod_encoding-20021209
# ./configure --with-apxs=/usr/local/apache2/bin/apxs
# cp ../mod_encoding.c.apache2.20040616 mod_encoding.c
# cd lib
# ./configure
# make make install
# cd ../
# make
# gcc -shared \
-o mod_encoding.so mod_encoding.o \
-Wc,-Wall \
-L/usr/local/lib \
-Llib \
-liconv_hook
# cp mod_encoding.so /usr/local/apache2/modules/
# ln -s /usr/local/lib/libiconv_hook.so /usr/local/apache2/lib/libiconv_hook.so.1
    • WebDAVディレクトリの作成
# usradd -d /home/dav -s /bin/false dav
# chown nobody.nobody /home/dav
# chmod 770 /home/dav
# mkdir /usr/local/apache2/var
# chown nobody.nobody /usr/local/apache2/var
# chmod 770 /usr/local/apache2/var
    • Apache2 cong設定
vi /usr/local/apache2/conf/httpd.conf
+add
---
Alias /dav /home/dav
<Location /dav>
  Options None
  AllowOverride None
  DAV on
</Location>
DAVLockDB  /usr/local/apache2/var/DAVLock

<Location />
    Header add MS-Author-Via "DAV"
</Location>

LoadModule encoding_module modules/mod_encoding.so
<IfModule mod_encoding.c>
  EncodingEngine        on
  SetServerEncoding     UTF-8
  DefaultClientEncoding JA-AUTO-SJIS-MS SJIS
  AddClientEncoding "cadaver/" EUC-JP
  NormalizeUsername on
</IfModule>
---

# /usr/local/apache2/bin/apachectl start
\\server.path\dav