Solaris9上でWebmailとWebDAVをApache2.0系で構築するメモ
今日Apacheのバージョンアップを実施した時、以前書いたメモが見つかったので転記。
1. WebMailサーバの構築2
1.1. PHP-4.4.2RC2+WebDAVが利用可能なApache2.0.55環境の構築
1.1.1. Apache-2.0.55のコンパイル
$ ./configure \
--prefix=/usr/local/httpd \
--enable-module=all \
--enable-http=yes \
--enable-dav=yes \
--enable-ssl \
--enable-shared=yes \
--enable-so
$ make
# sudo make install
1.1.2. PHP-4.4.2RC2のコンパイル
$ ./configure \
--with-apxs2=/usr/local/httpd/bin/apxs \
--enable-mbstring
$ make
# sudo make install
1.1.3. httpd.confの編集
(ア) LoadModuleセクションに以下を追記する。
LoadModule dav_module libexec/libdav.c
LoadModule php4_module libexec/libphp4.c
(イ) AddModuleセクションに以下を追記する。
AddModule mod_dav.c
AddModule mod_php4.c
(ウ) IfModule mod_dir.cセクションにindex.phpを追加する
<IfModule mod_dir.c>
DirectoryIndex index.html index.php
</IfModule>
(エ) WebDAVがMacOSXやWindowsで誤動作するので、以下を追記
<Files ~ "^\.ht">
Order allow,deny
Deny from all
Satisfy All
</Files>
# for MacOS Protection
<Files ~ "^\.[Hh][Tt]">
Order allow,deny
Deny from all
Satisfy All
</Files>
<Files ~ "^\.[Dd][Ss]_[Ss]">
Order allow,deny
Deny from all
Satisfy All
</Files>
<Files "rsrc">
Order allow,deny Deny from all
Satisfy All
</Files>
<DirectoryMatch ".*?.?.namedfork">
Order allow,deny
Deny from all
Satisfy All
</DirectoryMatch>
(オ) WebDAVの設定を追加する
# WebDAV Configuration
DAVLockDB /usr/local/apache/var/DAVLock
DAVMinTimeout 600
Alias /dav /export/home2
<Directory /export/home2>
DAV On
AllowOverride AuthConfig Limit
Options None
</Directory>
<Location />
Header add MS-Author-Via "DAV"
</Location>
# mod_encording Configuration
LoadModule encoding_module libexec/mod_encoding.so
<IFModule mod_encoding.c>
EncodingEngine on
SetServerEncoding UTF-8
AddClientEncoding SJIS "Microsoft .* DAV"
AddClientEncoding SJIS "xdwin9x/"
AddClientEncoding EUC-JP "cadaver/"
AddClientEncoding "Goliath/" UTF-8
AddClientEncoding "WebDAVFS/" UTF-8
</IFModule>
(カ) PHPを実行できるするようにする
# feature
#
#AddHandler send-as-is asis
#
# If you wish to use server-parsed imagemap files, use
#
#AddHandler imap-file map
#
# To enable type maps, you might want to use
#
#AddHandler type-map var
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
</IfModule>
1.2. SquirrelMail1.4.5のインストール
1.2.1. SquirrelMail1.4.5をApacheのhtdocsフォルダに解凍する。
1.2.2. SquirrelMailパッチをApacheのhtdocsフォルダに解凍する。
1.2.3. ./configureを実行して設定を行う。
これだけ。
簡単だけど、Apacheのconfigureだけが面倒くさい。