玄箱HGにFedoraを入れて自宅サーバを構築(Fedora12) - Amonution

WebDAVサーバー構築

概要

外部から共有ディレクトリにアクセスするため、WebDAVサーバを構築します。
ApacheがVer.2.0系であれば、既にインストール済みです。

WebDAV用のディレクトリ作成

WebDAVでアクセスするためのディレクトリを作成します。

WebDAV用ディレクトリ作成
[root@KURO-BOX ~]# mkdir /mnt/dav

所有者変更
[root@KURO-BOX ~]# chown apache. /mnt/dav

パーミッション変更
[root@KURO-BOX ~]# chmod 770 /mnt/dav

WebDAV用設定変更
[root@KURO-BOX ~]# vi /etc/httpd/conf.d/webdav.conf

Alias /webdav /mnt/dav
<Location /webdav>
  DAV On
  SSLRequireSSL
  Options None
  AuthType Basic
  AuthName WebDAV
  AuthUserFile /etc/httpd/conf/.htpasswd
  <Limit GET POST OPTIONS>
    Order allow,deny
    Require valid-user
  </Limit>
</Location>

パスワード設定
[root@KURO-BOX ~]# htpasswd -c /etc/httpd/conf/.htpasswd SambaUser
New password:	パスワード入力
Re-type new password:	パスワード入力
Adding password for user Sambauser

httpd再起動
[root@KURO-BOX ~]# /etc/rc.d/init.d/httpd restart
httpd を停止中:                                            [  OK  ]
httpd を起動中:                                            [  OK  ]

mod_encodingのインストール

WindowsでWebDAVにアクセスすると、日本語のファイル名が化ける可能性があります。これを解決するために、mod_encodingをインストールします。
次のサイトを参考にしてください。
※WebDAV環境における日本語ファイル名の問題
まずは、mod_encodingのインストールに必要なapxsを含んだhttpd-develをインストールします。

[root@KURO-BOX ~]# yum -y install httpd-devel

読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
 * fedora: ftp.kddilabs.jp
 * rpmfusion-free: ucmirror.canterbury.ac.nz
 * rpmfusion-free-updates: ucmirror.canterbury.ac.nz
 * updates: ftp.jaist.ac.jp
インストール処理の設定をしています
依存性の解決をしています
--> トランザクションの確認を実行しています
---> パッケージ httpd-devel.ppc 0:2.2.15-1.fc12.2 を更新に設定しました
--> 依存性の処理をしています: apr-util-devel のパッケージ: httpd-devel-2.2.15-1.fc12.2.ppc
--> 依存性の処理をしています: apr-devel のパッケージ: httpd-devel-2.2.15-1.fc12.2.ppc
--> トランザクションの確認を実行しています
---> パッケージ apr-devel.ppc 0:1.3.9-3.fc12 を更新に設定しました
---> パッケージ apr-util-devel.ppc 0:1.3.9-2.fc12 を更新に設定しました
--> 依存性の処理をしています: openldap-devel のパッケージ: apr-util-devel-1.3.9-2.fc12.ppc
--> 依存性の処理をしています: db4-devel のパッケージ: apr-util-devel-1.3.9-2.fc12.ppc
--> 依存性の処理をしています: expat-devel のパッケージ: apr-util-devel-1.3.9-2.fc12.ppc
--> トランザクションの確認を実行しています
---> パッケージ db4-devel.ppc 0:4.7.25-13.fc12 を更新に設定しました
--> 依存性の処理をしています: libdb_cxx-4.7.so のパッケージ: db4-devel-4.7.25-13.fc12.ppc
---> パッケージ expat-devel.ppc 0:2.0.1-8.fc12 を更新に設定しました
---> パッケージ openldap-devel.ppc 0:2.4.19-4.fc12 を更新に設定しました
--> トランザクションの確認を実行しています
---> パッケージ db4-cxx.ppc 0:4.7.25-13.fc12 を更新に設定しました
--> 依存性解決を終了しました

依存性を解決しました

========================================================================================================================
 パッケージ                      アーキテクチャ       バージョン                         リポジトリー              容量
========================================================================================================================
インストールしています:
 httpd-devel                     ppc                  2.2.15-1.fc12.2                    updates                  143 k
依存性関連でのインストールをします:
 apr-devel                       ppc                  1.3.9-3.fc12                       fedora                   176 k
 apr-util-devel                  ppc                  1.3.9-2.fc12                       fedora                    64 k
 db4-cxx                         ppc                  4.7.25-13.fc12                     fedora                   523 k
 db4-devel                       ppc                  4.7.25-13.fc12                     fedora                   5.1 M
 expat-devel                     ppc                  2.0.1-8.fc12                       updates                  125 k
 openldap-devel                  ppc                  2.4.19-4.fc12                      updates                  1.1 M

トランザクションの要約
========================================================================================================================
インストール         7 パッケージ
アップグレード       0 パッケージ

総ダウンロード容量: 7.2 M
インストール済み容量: 33 M
パッケージをダウンロードしています:
(1/7): apr-devel-1.3.9-3.fc12.ppc.rpm                                                            | 176 kB     00:00
(2/7): apr-util-devel-1.3.9-2.fc12.ppc.rpm                                                       |  64 kB     00:00
(3/7): db4-cxx-4.7.25-13.fc12.ppc.rpm                                                            | 523 kB     00:00
(4/7): db4-devel-4.7.25-13.fc12.ppc.rpm                                                          | 5.1 MB     00:01
(5/7): expat-devel-2.0.1-8.fc12.ppc.rpm                                                          | 125 kB     00:00
(6/7): httpd-devel-2.2.15-1.fc12.2.ppc.rpm                                                       | 143 kB     00:00
(7/7): openldap-devel-2.4.19-4.fc12.ppc.rpm                                                      | 1.1 MB     00:00
------------------------------------------------------------------------------------------------------------------------
合計                                                                                    1.7 MB/s | 7.2 MB     00:04
rpm_check_debug を実行しています
トランザクションのテストを実行しています
トランザクションのテストを成功しました
トランザクションを実行しています
  インストールし : apr-devel-1.3.9-3.fc12.ppc                                                                       1/7
  インストールし : expat-devel-2.0.1-8.fc12.ppc                                                                     2/7
  インストールし : openldap-devel-2.4.19-4.fc12.ppc                                                                 3/7
  インストールし : db4-cxx-4.7.25-13.fc12.ppc                                                                       4/7
  インストールし : db4-devel-4.7.25-13.fc12.ppc                                                                     5/7
  インストールし : apr-util-devel-1.3.9-2.fc12.ppc                                                                  6/7
  インストールし : httpd-devel-2.2.15-1.fc12.2.ppc                                                                  7/7

インストールしました:
  httpd-devel.ppc 0:2.2.15-1.fc12.2

依存性関連をインストールしました:
  apr-devel.ppc 0:1.3.9-3.fc12         apr-util-devel.ppc 0:1.3.9-2.fc12       db4-cxx.ppc 0:4.7.25-13.fc12
  db4-devel.ppc 0:4.7.25-13.fc12       expat-devel.ppc 0:2.0.1-8.fc12          openldap-devel.ppc 0:2.4.19-4.fc12

完了しました!

次にmod_encodingをダウンロードします。

[root@KURO-BOX ~]# wget http://webdav.todo.gr.jp/download/mod_encoding-20021209.tar.gz
--2010-06-05 20:33:15--  http://webdav.todo.gr.jp/download/mod_encoding-20021209.tar.gz
webdav.todo.gr.jp をDNSに問いあわせています... 210.150.184.134
webdav.todo.gr.jp|210.150.184.134|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 260587 (254K) [application/x-gzip]
`mod_encoding-20021209.tar.gz' に保存中

100%[==============================================================================>] 260,587     --.-K/s 時間 0.09s

2010-06-05 20:33:16 (2.89 MB/s) - `mod_encoding-20021209.tar.gz' へ保存完了 [260587/260587]

Apache2版のmod_encodingをダウンロードします。

[root@KURO-BOX ~]# wget http://webdav.todo.gr.jp/download/experimental/mod_encoding.c.apache2.20040616
--2010-06-05 20:35:14--  http://webdav.todo.gr.jp/download/experimental/mod_encoding.c.apache2.20040616
webdav.todo.gr.jp をDNSに問いあわせています... 210.150.184.134
webdav.todo.gr.jp|210.150.184.134|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 16954 (17K) [text/x-csrc]
`mod_encoding.c.apache2.20040616' に保存中

100%[==============================================================================>] 16,954      --.-K/s 時間 0.03s

2010-06-05 20:35:14 (559 KB/s) - `mod_encoding.c.apache2.20040616' へ保存完了 [16954/16954]

ダウンロードしたmod_encodingを展開します。

[root@KURO-BOX ~]# tar zxvf mod_encoding-20021209.tar.gz
mod_encoding-20021209/
mod_encoding-20021209/lib/
mod_encoding-20021209/lib/NEWS
mod_encoding-20021209/lib/cp.h
mod_encoding-20021209/lib/iconv_hook_ja_auto.c
mod_encoding-20021209/lib/iconv_hook_default.c
mod_encoding-20021209/lib/aclocal.m4
mod_encoding-20021209/lib/iconv_hook_eucjp.c
mod_encoding-20021209/lib/README.JP
mod_encoding-20021209/lib/README
mod_encoding-20021209/lib/ltmain.sh
mod_encoding-20021209/lib/configure
mod_encoding-20021209/lib/identify_encoding.c
mod_encoding-20021209/lib/identify_encoding.h
mod_encoding-20021209/lib/iconv_hook_mssjis.c
mod_encoding-20021209/lib/iconv_hook_utf8_cp932.c
mod_encoding-20021209/lib/configure.in
mod_encoding-20021209/lib/config.guess
mod_encoding-20021209/lib/install-sh
mod_encoding-20021209/lib/config.sub
mod_encoding-20021209/lib/missing
mod_encoding-20021209/lib/iconv_hook.c
mod_encoding-20021209/lib/iconv_hook.h
mod_encoding-20021209/lib/mkinstalldirs
mod_encoding-20021209/lib/Makefile.am
mod_encoding-20021209/lib/Makefile.in
mod_encoding-20021209/lib/config.h.in
mod_encoding-20021209/lib/ucs2_cp932.h
mod_encoding-20021209/lib/stamp-h.in
mod_encoding-20021209/lib/AUTHORS
mod_encoding-20021209/lib/iconv_hook_utf8_eucjp.c
mod_encoding-20021209/lib/INSTALL
mod_encoding-20021209/lib/iconv.h.replace
mod_encoding-20021209/lib/iconv_hook_ucs2_cp932.c
mod_encoding-20021209/lib/ChangeLog
mod_encoding-20021209/lib/acconfig.h
mod_encoding-20021209/lib/COPYING
mod_encoding-20021209/NEWS
mod_encoding-20021209/mod_encoding.c
mod_encoding-20021209/aclocal.m4
mod_encoding-20021209/README.JP
mod_encoding-20021209/README
mod_encoding-20021209/configure
mod_encoding-20021209/configure.in
mod_encoding-20021209/install-sh
mod_encoding-20021209/Makefile.simple
mod_encoding-20021209/missing
mod_encoding-20021209/mkinstalldirs
mod_encoding-20021209/Makefile.am
mod_encoding-20021209/Makefile.in
mod_encoding-20021209/config.h.in
mod_encoding-20021209/stamp-h.in
mod_encoding-20021209/AUTHORS
mod_encoding-20021209/INSTALL
mod_encoding-20021209/ChangeLog
mod_encoding-20021209/acconfig.h
mod_encoding-20021209/COPYING

Apache2版mod_encodingに差し替えます。

[root@KURO-BOX ~]# mv mod_encoding.c.apache2.20040616 mod_encoding-20021209/mod_encoding.c
mv: `mod_encoding-20021209/mod_encoding.c' を上書きしてもよろしいですか(yes/no)? Y

mod_encodingのmakeとinstallを行います。
libディレクトリに移動し、configure & make & make install でOKです。

[root@KURO-BOX ~]# cd mod_encoding-20021209/lib/

[root@KURO-BOX lib]# ./configure
creating cache ./config.cache
checking for a BSD compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking whether make sets ${MAKE}... yes
checking for working aclocal... missing
checking for working autoconf... missing
checking for working automake... missing
checking for working autoheader... missing
checking for working makeinfo... missing
checking whether to enable maintainer-specific portions of Makefiles... no
checking for gcc... gcc
checking whether the C compiler (gcc  ) works... yes
checking whether the C compiler (gcc  ) is a cross-compiler... no
checking whether we are using GNU C... yes
checking whether gcc accepts -g... yes
checking whether make sets ${MAKE}... (cached) yes
checking for gcc option to accept ANSI C... none needed
checking for a BSD compatible install... /usr/bin/install -c
checking for Cygwin environment... no
checking for mingw32 environment... no
checking how to run the C preprocessor... gcc -E
checking host system type... powerpc-unknown-linux-gnu
checking build system type... powerpc-unknown-linux-gnu
checking for ld used by GCC... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for /usr/bin/ld option to reload object files... -r
checking for BSD-compatible nm... /usr/bin/nm -B
checking for a sed that does not truncate output... /bin/sed
checking whether ln -s works... yes
checking how to recognise dependant libraries... pass_all
checking for object suffix... o
checking for executable suffix... no
checking command to parse /usr/bin/nm -B output... ok
checking for dlfcn.h... yes
checking for ranlib... ranlib
checking for strip... strip
checking for objdir... .libs
checking for gcc option to produce PIC... -fPIC
checking if gcc PIC flag -fPIC works... yes
checking if gcc static flag -static works... no
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.lo... yes
checking if gcc supports -fno-rtti -fno-exceptions... yes
checking whether the linker (/usr/bin/ld) supports shared libraries... yes
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking dynamic linker characteristics... GNU/Linux ld.so
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking whether -lc should be explicitly linked in... no
creating libtool
checking whether to use iconv(3) as a fallback converter... yes
checking for iconv.h... yes
checking for iconv in -liconv... no
checking for libiconv in -liconv... no
updating cache ./config.cache
creating ./config.status
creating Makefile
creating config.h


[root@KURO-BOX lib]# make
/bin/sh ./libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -c iconv_hook.c
mkdir .libs
gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wp,-MD,.deps/iconv_hook.pp -c iconv_hook.c  -fPIC -DPIC -o .libs/iconv_hook.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wp,-MD,.deps/iconv_hook.pp -c iconv_hook.c -o iconv_hook.o >/dev/null 2>>&1
mv -f .libs/iconv_hook.lo iconv_hook.lo
/bin/sh ./libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -c iconv_hook_default.c
rm -f .libs/iconv_hook_default.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wp,-MD,.deps/iconv_hook_default.pp -c iconv_hook_default.c  -fPIC -DPIC -o .libs/iconv_hook_default.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wp,-MD,.deps/iconv_hook_default.pp -c iconv_hook_default.c -o iconv_hook_default.o >/dev/null 2>&1
mv -f .libs/iconv_hook_default.lo iconv_hook_default.lo
/bin/sh ./libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -c iconv_hook_eucjp.c
rm -f .libs/iconv_hook_eucjp.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wp,-MD,.deps/iconv_hook_eucjp.pp -c iconv_hook_eucjp.c  -fPIC -DPIC -o .libs/iconv_hook_eucjp.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wp,-MD,.deps/iconv_hook_eucjp.pp -c iconv_hook_eucjp.c -o iconv_hook_eucjp.o >/dev/null 2>&1
mv -f .libs/iconv_hook_eucjp.lo iconv_hook_eucjp.lo
/bin/sh ./libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -c iconv_hook_ja_auto.c
rm -f .libs/iconv_hook_ja_auto.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wp,-MD,.deps/iconv_hook_ja_auto.pp -c iconv_hook_ja_auto.c  -fPIC -DPIC -o .libs/iconv_hook_ja_auto.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wp,-MD,.deps/iconv_hook_ja_auto.pp -c iconv_hook_ja_auto.c -o iconv_hook_ja_auto.o >/dev/null 2>&1
mv -f .libs/iconv_hook_ja_auto.lo iconv_hook_ja_auto.lo
/bin/sh ./libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -c iconv_hook_mssjis.c
rm -f .libs/iconv_hook_mssjis.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wp,-MD,.deps/iconv_hook_mssjis.pp -c iconv_hook_mssjis.c  -fPIC -DPIC -o .libs/iconv_hook_mssjis.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wp,-MD,.deps/iconv_hook_mssjis.pp -c iconv_hook_mssjis.c -o iconv_hook_mssjis.o >/dev/null 2>&1
mv -f .libs/iconv_hook_mssjis.lo iconv_hook_mssjis.lo
/bin/sh ./libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -c iconv_hook_ucs2_cp932.c
rm -f .libs/iconv_hook_ucs2_cp932.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wp,-MD,.deps/iconv_hook_ucs2_cp932.pp -c iconv_hook_ucs2_cp932.c  -fPIC -DPIC -o .libs/iconv_hook_ucs2_cp932.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wp,-MD,.deps/iconv_hook_ucs2_cp932.pp -c iconv_hook_ucs2_cp932.c -o iconv_hook_ucs2_cp932.o >/dev/null 2>&1
mv -f .libs/iconv_hook_ucs2_cp932.lo iconv_hook_ucs2_cp932.lo
/bin/sh ./libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -c iconv_hook_utf8_cp932.c
rm -f .libs/iconv_hook_utf8_cp932.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wp,-MD,.deps/iconv_hook_utf8_cp932.pp -c iconv_hook_utf8_cp932.c  -fPIC -DPIC -o .libs/iconv_hook_utf8_cp932.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wp,-MD,.deps/iconv_hook_utf8_cp932.pp -c iconv_hook_utf8_cp932.c -o iconv_hook_utf8_cp932.o >/dev/null 2>&1
mv -f .libs/iconv_hook_utf8_cp932.lo iconv_hook_utf8_cp932.lo
/bin/sh ./libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -c iconv_hook_utf8_eucjp.c
rm -f .libs/iconv_hook_utf8_eucjp.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wp,-MD,.deps/iconv_hook_utf8_eucjp.pp -c iconv_hook_utf8_eucjp.c  -fPIC -DPIC -o .libs/iconv_hook_utf8_eucjp.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wp,-MD,.deps/iconv_hook_utf8_eucjp.pp -c iconv_hook_utf8_eucjp.c -o iconv_hook_utf8_eucjp.o >/dev/null 2>&1
mv -f .libs/iconv_hook_utf8_eucjp.lo iconv_hook_utf8_eucjp.lo
/bin/sh ./libtool --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -c identify_encoding.c
rm -f .libs/identify_encoding.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wp,-MD,.deps/identify_encoding.pp -c identify_encoding.c  -fPIC -DPIC -o .libs/identify_encoding.lo
gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -Wp,-MD,.deps/identify_encoding.pp -c identify_encoding.c -o identify_encoding.o >/dev/null 2>&1
mv -f .libs/identify_encoding.lo identify_encoding.lo
/bin/sh ./libtool --mode=link gcc  -g -O2  -o libiconv_hook.la -rpath /usr/local/lib -version-info 1:0:0 iconv_hook.lo iconv_hook_default.lo iconv_hook_eucjp.lo iconv_hook_ja_auto.lo iconv_hook_mssjis.lo iconv_hook_ucs2_cp932.lo iconv_hook_utf8_cp932.lo iconv_hook_utf8_eucjp.lo identify_encoding.lo
rm -fr .libs/libiconv_hook.la .libs/libiconv_hook.* .libs/libiconv_hook.*
gcc -shared  iconv_hook.lo iconv_hook_default.lo iconv_hook_eucjp.lo iconv_hook_ja_auto.lo iconv_hook_mssjis.lo iconv_hook_ucs2_cp932.lo iconv_hook_utf8_cp932.lo iconv_hook_utf8_eucjp.lo identify_encoding.lo   -Wl,-soname -Wl,libiconv_hook.so.1 -o .libs/libiconv_hook.so.1.0.0
(cd .libs && rm -f libiconv_hook.so.1 && ln -s libiconv_hook.so.1.0.0 libiconv_hook.so.1)
(cd .libs && rm -f libiconv_hook.so && ln -s libiconv_hook.so.1.0.0 libiconv_hook.so)
ar cru .libs/libiconv_hook.a  iconv_hook.o iconv_hook_default.o iconv_hook_eucjp.o iconv_hook_ja_auto.o iconv_hook_mssjis.o iconv_hook_ucs2_cp932.o iconv_hook_utf8_cp932.o iconv_hook_utf8_eucjp.o identify_encoding.o
ranlib .libs/libiconv_hook.a
creating libiconv_hook.la
(cd .libs && rm -f libiconv_hook.la && ln -s ../libiconv_hook.la libiconv_hook.la)


[root@KURO-BOX lib]# make install
make[1]: ディレクトリ `/root/mod_encoding-20021209/lib' に入ります
/bin/sh ./mkinstalldirs /usr/local/lib
/bin/sh ./libtool  --mode=install /usr/bin/install -c libiconv_hook.la /usr/local/lib/libiconv_hook.la
/usr/bin/install -c .libs/libiconv_hook.so.1.0.0 /usr/local/lib/libiconv_hook.so.1.0.0
(cd /usr/local/lib && rm -f libiconv_hook.so.1 && ln -s libiconv_hook.so.1.0.0 libiconv_hook.so.1)
(cd /usr/local/lib && rm -f libiconv_hook.so && ln -s libiconv_hook.so.1.0.0 libiconv_hook.so)
/usr/bin/install -c .libs/libiconv_hook.lai /usr/local/lib/libiconv_hook.la
/usr/bin/install -c .libs/libiconv_hook.a /usr/local/lib/libiconv_hook.a
ranlib /usr/local/lib/libiconv_hook.a
chmod 644 /usr/local/lib/libiconv_hook.a
PATH="$PATH:/sbin" ldconfig -n /usr/local/lib
----------------------------------------------------------------------
Libraries have been installed in:
   /usr/local/lib

If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
   - add LIBDIR to the `LD_LIBRARY_PATH' environment variable
     during execution
   - add LIBDIR to the `LD_RUN_PATH' environment variable
     during linking
   - use the `-Wl,--rpath -Wl,LIBDIR' linker flag
   - have your system administrator add LIBDIR to `/etc/ld.so.conf'

See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
/bin/sh ./mkinstalldirs /usr/local/include/iconv_hook
mkdir /usr/local/include/iconv_hook
 /usr/bin/install -c -m 644 iconv_hook.h /usr/local/include/iconv_hook/iconv_hook.h
make  install-data-hook
make[2]: ディレクトリ `/root/mod_encoding-20021209/lib' に入ります
/usr/bin/install -c -m 644 iconv.h.replace /usr/local/include/iconv_hook/iconv.h
make[2]: ディレクトリ `/root/mod_encoding-20021209/lib' から出ます
make[1]: ディレクトリ `/root/mod_encoding-20021209/lib' から出ます

mod_encodingにパッチを当てます。

パッチのダウンロード
[root@KURO-BOX mod_encoding-20021209]# wget http://www.aconus.com/~oyaji/faq/mod_encoding.c-apache2.2-20060520.patch
--2010-06-05 20:41:16--  http://www.aconus.com/~oyaji/faq/mod_encoding.c-apache2.2-20060520.patch
www.aconus.com をDNSに問いあわせています... 115.177.147.192
www.aconus.com|115.177.147.192|:80 に接続しています... 接続しました。
HTTP による接続要求を送信しました、応答を待っています... 200 OK
長さ: 3591 (3.5K) [text/x-patch]
`mod_encoding.c-apache2.2-20060520.patch' に保存中

100%[==============================================================================>] 3,591       --.-K/s 時間 0.02s

2010-06-05 20:41:16 (176 KB/s) - `mod_encoding.c-apache2.2-20060520.patch' へ保存完了 [3591/3591]

patch実施
[root@KURO-BOX mod_encoding-20021209]# patch -p0 < mod_encoding.c-apache2.2-20060520.patch
patching file mod_encoding.c

configure実施
[root@KURO-BOX mod_encoding-20021209]# ./configure --with-apxs=/usr/sbin/apxs --with-iconv-hook
creating cache ./config.cache
checking for a BSD compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking whether make sets ${MAKE}... yes
checking for working aclocal... missing
checking for working autoconf... missing
checking for working automake... missing
checking for working autoheader... missing
checking for working makeinfo... missing
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether to compile with debug code... checking whether to wrap iconv with iconv_hook... yes
checking for iconv_hook in -liconv_hook... yes
checking for iconv in -liconv... no
checking for libiconv in -liconv... no
updating cache ./config.cache
creating ./config.status
creating Makefile
creating config.h

Makefile編集
[root@KURO-BOX mod_encoding-20021209]# vi Makefile

LIBS =  -liconv_hook
↓このように書き換えます
LIBS =  -L/usr/local/lib -liconv_hook

install-exec-local:
        $(APXS) -i mod_encoding.so
        ↓このように書き換えます
        $(APXS) -i -a -n encoding mod_encoding.la


make実施
[root@KURO-BOX mod_encoding-20021209]# make
/usr/sbin/apxs -c  -I/usr/local/include/iconv_hook  -L/usr/local/lib -liconv_hook mod_encoding.c
/usr/lib/apr-1/build/libtool --silent --mode=compile gcc -prefer-pic -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32  -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -pthread -I/usr/include/httpd  -I/usr/include/apr-1   -I/usr/include/apr-1  -I/usr/local/include/iconv_hook  -c -o mod_encoding.lo mod_encoding.c && touch mod_encoding.slo
mod_encoding.c:362: 警告: initialization from incompatible pointer type
mod_encoding.c:366: 警告: initialization from incompatible pointer type
mod_encoding.c:370: 警告: initialization from incompatible pointer type
mod_encoding.c:374: 警告: initialization from incompatible pointer type
mod_encoding.c:378: 警告: initialization from incompatible pointer type
/usr/lib/apr-1/build/libtool --silent --mode=link gcc -o mod_encoding.la  -L/usr/local/lib -liconv_hook -rpath /usr/lib/httpd/modules -module -avoid-version    mod_encoding.lo

install実施
[root@KURO-BOX mod_encoding-20021209]# make install
/usr/sbin/apxs -c  -I/usr/local/include/iconv_hook  -L/usr/local/lib -liconv_hook mod_encoding.c
/usr/lib/apr-1/build/libtool --silent --mode=compile gcc -prefer-pic -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32  -DLINUX=2 -D_REENTRANT -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -pthread -I/usr/include/httpd  -I/usr/include/apr-1   -I/usr/include/apr-1  -I/usr/local/include/iconv_hook  -c -o mod_encoding.lo mod_encoding.c && touch mod_encoding.slo
mod_encoding.c:362: 警告: initialization from incompatible pointer type
mod_encoding.c:366: 警告: initialization from incompatible pointer type
mod_encoding.c:370: 警告: initialization from incompatible pointer type
mod_encoding.c:374: 警告: initialization from incompatible pointer type
mod_encoding.c:378: 警告: initialization from incompatible pointer type
/usr/lib/apr-1/build/libtool --silent --mode=link gcc -o mod_encoding.la  -L/usr/local/lib -liconv_hook -rpath /usr/lib/httpd/modules -module -avoid-version    mod_encoding.lo
make[1]: ディレクトリ `/root/mod_encoding-20021209' に入ります
/usr/sbin/apxs -i -a -n encoding mod_encoding.la
/usr/lib/httpd/build/instdso.sh SH_LIBTOOL='/usr/lib/apr-1/build/libtool' mod_encoding.la /usr/lib/httpd/modules
/usr/lib/apr-1/build/libtool --mode=install cp mod_encoding.la /usr/lib/httpd/modules/
libtool: install: cp .libs/mod_encoding.so /usr/lib/httpd/modules/mod_encoding.so
libtool: install: cp .libs/mod_encoding.lai /usr/lib/httpd/modules/mod_encoding.la
libtool: install: cp .libs/mod_encoding.a /usr/lib/httpd/modules/mod_encoding.a
libtool: install: chmod 644 /usr/lib/httpd/modules/mod_encoding.a
libtool: install: ranlib /usr/lib/httpd/modules/mod_encoding.a
libtool: finish: PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/sbin" ldconfig -n /usr/lib/httpd/modules
----------------------------------------------------------------------
Libraries have been installed in:
   /usr/lib/httpd/modules

If you ever happen to want to link against installed libraries
in a given directory, LIBDIR, you must either use libtool, and
specify the full pathname of the library, or use the `-LLIBDIR'
flag during linking and do at least one of the following:
   - add LIBDIR to the `LD_LIBRARY_PATH' environment variable
     during execution
   - add LIBDIR to the `LD_RUN_PATH' environment variable
     during linking
   - use the `-Wl,-rpath -Wl,LIBDIR' linker flag
   - have your system administrator add LIBDIR to `/etc/ld.so.conf'

See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
chmod 755 /usr/lib/httpd/modules/mod_encoding.so
[activating module `encoding' in /etc/httpd/conf/httpd.conf]
make[1]: `install-data-am' に対して行うべき事はありません.
make[1]: ディレクトリ `/root/mod_encoding-20021209' から出ます

mod_encodingの設定

mod_encodingの設定を行います。
設定ファイルは新規作成します。

[root@KURO-BOX ~]# vi /etc/httpd/conf.d/mod_encoding.conf

下記のように編集します。
EncodingEngine on
SetServerEncoding UTF-8
DefaultClientEncoding UTF-8 CP932 EUCJP-MS
AddClientEncoding "Microsoft .* DAV 1.1" ASCII CP932 UTF-8
AddClientEncoding "Microsoft .* DAV" UTF-8 CP932
AddClientEncoding "(Microsoft .* DAV $)" UTF-8 CP932
AddClientEncoding "(Microsoft .* DAV 1.1)" CP932 UTF-8
AddClientEncoding "Microsoft-WebDAV*" UTF-8 CP932
AddClientEncoding "RMA/*" CP932		
AddClientEncoding "xdwin9x/" CP932
AddClientEncoding "cadaver/" UTF-8 EUCJP-MS
AddClientEncoding "Mozilla/" EUCJP-MS

NormalizeUsername on	←ホスト名を取り外して認証する	

httpdを再起動します。

[root@KURO-BOX ~]# /etc/rc.d/init.d/httpd restart
httpd を停止中:                                            [  OK  ]
httpd を起動中:                                            [  OK  ]

共有ディレクトリの作成

WebDAV用の共有ディレクトリを作成します。

WebDAV用ディレクトリ作成
[root@KURO-BOX ~]# mkdir /mnt/dav/public

オーナーの変更
[root@KURO-BOX ~]# chown apache. /mnt/dav/public/

アクセス権限の変更
[root@KURO-BOX ~]# chmod 770 /mnt/dav/public/

WebDAVの設定

WebDAVの設定を行います。
設定ファイルは新規作成します。

[root@KURO-BOX ~]# vi /etc/httpd/conf.d/webdav.conf

下記のように編集します。
Alias /webdav /mnt/dav/public
<Location "/webdav/">
    DAV On
    SSLRequireSSL
    Options None
    AuthType Basic
    AuthName WebDAV
    AuthUserFile /etc/httpd/conf/.htpasswd
  <Limit GET POST OPTIONS>
    Order allow,deny
    Allow from all
    Require valid-user
  </Limit>
</Location>

Apacheを再起動します。

[root@KURO-BOX ~]# /etc/init.d/httpd restart
httpd を停止中:                                            [  OK  ]
httpd を起動中:                                            [  OK  ]

WebDAV用ユーザーのパスワードを設定します。

[root@KURO-BOX ~]# htpasswd -b /etc/httpd/conf/.htpasswd SambaUser PASSWORD

スポンサード リンク

TOPに戻る / メニューに戻る
Copyright © 1999-2017 Amonution  All rights reserved.
Address