2007年4月29日日曜日

apahe2.4 webdav with encoding

レシピ
  1. httpd-2.2.4.tar.bz2
  2. mod_encoding-20021209.tar.gz
  3. mod_encoding.c.apache2.20040616
コンパイル
apache2.2.4
prompt$ cd httpd-2.2.4
prompt$ CFLAGS="-O2" ./configure --prefix=/usr/local/apps/apache2 --enable-modules=all --with-ssl=/usr/lib/openssl --enable-dav=yes
prompt$ make
prompt$ make install

mod_encoding
apache2用のmod_encodingソースを置き換え
prompt$ cd mod_encoding-20021209
prompt$ mv mod_encoding.c mod_encoding.c.org
prompt$ mv ../mod_encoding.c.apache2.20040616 mod_encoding.c

libをコンパイル
prompt$ cd lib/
prompt$ ./configure
prompt$ make && make install
prompt$ ls /usr/local/lib
libiconv_hook.a libiconv_hook.so libiconv_hook.so.1.0.0
libiconv_hook.la libiconv_hook.so.1

mod_encodingをコンパイル
prompt$ configure --with-apxs=/usr/local/apps/apache2/bin/apxs
prompt$ make

 mod_encoding.c:236: error: 'regex_t' undeclared (first use in this function)

のエラーがでるので
 #include  
 を追加して再度コンパイル。

prompt$ make install

cp mod_encoding.so /usr/local/apps/apache2/modules/mod_encoding.so
cp: cannot stat `mod_encoding.so': No such file or directory

と言われるので、

prompt$ ls .libs
.libs/mod_encoding.a .libs/mod_encoding.lai .libs/mod_encoding.so
.libs/mod_encoding.la .libs/mod_encoding.o
.libsディレクトリに作成された mod_encoding.soを /usr/local/apps/apache2/modules
にコピーする。

参照ページ @IT

mod_encoding.confファイルを作成し、
LoadModule encoding_module modules/mod_encoding.so
<IfModule mod_encoding.c>
EncodingEngine on
SetServerEncoding UTF-8
DefaultClientEncoding JA-AUTO-SJIS-MS SJIS
NormalizeUsername on
<IfModule>
を記述して稼働確認。

0 件のコメント: