さて,ようやくサーバーソフトのインストールだ.本節では,FreeBSD Expert編集部,FreeBSD Expert 2005(技術評論社)および宮本久仁男 ,山田泰資,渡邊剛,WebDAVシステム構築ガイド(技術評論社)2003を参考にしている.アフリエイト貼っときますので買ってくださいね.
ひょっとしたら既にインストールされているかもしれない.
> cd /usr/ports/devel/autoconf259
> sudo make install clean
ヴァージョンにはいろいろなものがあるが,結局後ほど 4.2 を使うことになるので,ここでは素直に 4.2 をインストールしておく.
> cd /usr/ports/databases/db42
> sudo make install clean
> cd /usr/ports/textproc/expat2
> sudo make install clean
とすると,
===> expat-2.0.0_1 is already installed
You may wish to ``make deinstall'' and install this port again
by ``make reinstall'' to upgrade it properly.
If you really wish to overwrite the old port of textproc/expat2
without deleting it first, set the variable "FORCE_PKG_REGISTER"
in your environment or the "make install" command line.
*** Error code 1
Stop in /usr/ports/textproc/expat2.
なるメッセージが出て止まる.そこで,以下のようにしてアンインストールして再インストールする.
> sudo make deinstall
> sudo make reinstall
Apacheは最新の 2.2 をインストールしてみよう
> cd /usr/ports/www/apache22
> sudo make WITH_BERKELEYDB=db42 -DWITH_LDAP install clean
ちなみに,筆者のApacheのconfig画面は以下のようになっている.
Options for apache 2.2.9 [ ] APR_FROM_PORTS Use devel/apr as APR (beware!) [ ] THREADS Enable threads support in APR [X] MYSQL Enable MySQL support for apr-dbd [ ] PGSQL Enable PostgreSQL support for apr-dbd [ ] SQLITE Enable SQLite support for apr-dbd [X] IPV6 Enable IPv6 support [ ] PCRE_FROM_PORTS Use devel/pcre instead of bundled one [X] BDB Enable BerkeleyDB dbm [X] AUTH_BASIC Enable mod_auth_basic [X] AUTH_DIGEST Enable mod_auth_digest [X] AUTHN_FILE Enable mod_authn_file [ ] AUTHN_DBD Enable mod_authn_dbd [X] AUTHN_DBM Enable mod_authn_dbm [X] AUTHN_ANON Enable mod_authn_anon [X] AUTHN_DEFAULT Enable mod_authn_default [X] AUTHN_ALIAS Enable mod_authn_alias [X] AUTHZ_HOST Enable mod_authz_host [X] AUTHZ_GROUPFILE Enable mod_authz_groupfile [X] AUTHZ_USER Enable mod_authz_user [X] AUTHZ_DBM Enable mod_authz_dbm [X] AUTHZ_OWNER Enable mod_authz_owner [X] AUTHZ_DEFAULT Enable mod_authz_default [X] CACHE Enable mod_cache [X] DISK_CACHE Enable mod_disk_cache [X] FILE_CACHE Enable mod_file_cache [ ] MEM_CACHE Enable mod_mem_cache [X] DAV Enable mod_dav [X] DAV_FS Enable mod_dav_fs [ ] BUCKETEER Enable mod_bucketeer [ ] CASE_FILTER Enable mod_case_filter [ ] CASE_FILTER_IN Enable mod_case_filter_in [ ] EXT_FILTER Enable mod_ext_filter [ ] LOG_FORENSIC Enable mod_log_forensic [ ] OPTIONAL_HOOK_EXPORT Enable mod_optional_hook_export [ ] OPTIONAL_HOOK_IMPORT Enable mod_optional_hook_import [ ] OPTIONAL_FN_IMPORT Enable mod_optional_fn_import [ ] OPTIONAL_FN_EXPORT Enable mod_optional_fn_export [ ] LDAP Enable mod_ldap [ ] AUTHNZ_LDAP Enable mod_authnz_ldap [X] ACTIONS Enable mod_actions [X] ALIAS Enable mod_alias [X] ASIS Enable mod_asis [X] AUTOINDEX Enable mod_autoindex [X] CERN_META Enable mod_cern_meta [X] CGI Enable mod_cgi [X] CHARSET_LITE Enable mod_charset_lite [ ] DBD Enable mod_dbd [X] DEFLATE Enable mod_deflate [X] DIR Enable mod_dir [X] DUMPIO Enable mod_dumpio [X] ENV Enable mod_env [X] EXPIRES Enable mod_expires [X] HEADERS Enable mod_headers [X] IMAGEMAP Enable mod_imagemap [X] INCLUDE Enable mod_include [X] INFO Enable mod_info [X] LOG_CONFIG Enable mod_log_config [X] LOGIO Enable mod_logio [X] MIME Enable mod_mime [X] MIME_MAGIC Enable mod_mime_magic [X] NEGOTIATION Enable mod_negotiation [X] REWRITE Enable mod_rewrite [X] SETENVIF Enable mod_setenvif [X] SPELING Enable mod_speling [X] STATUS Enable mod_status [X] UNIQUE_ID Enable mod_unique_id [X] USERDIR Enable mod_userdir [X] USERTRACK Enable mod_usertrack [X] VHOST_ALIAS Enable mod_vhost_alias [X] FILTER Enable mod_filter [X] VERSION Enable mod_version [ ] PROXY Enable mod_proxy [ ] PROXY_CONNECT Enable mod_proxy_connect [ ] PROXY_FTP Enable mod_proxy_ftp [ ] PROXY_HTTP Enable mod_proxy_http [ ] PROXY_AJP Enable mod_proxy_ajp [ ] PROXY_BALANCER Enable mod_proxy_balancer [X] SSL Enable mod_ssl [ ] SUEXEC Enable mod_suexec [ ] CGID Enable mod_cgid
インストールが済んだら,Apacheの設定ファイル httpd.conf を vi で設定しよう.
> sudo vi /usr/local/etc/apache22/httpd.conf
そして, LoadModule の前にあるコメントアウトを全て外そう.何でも実装するのだ.特に, dav_module と dav_fs_module はコメントアウトされていると WebDAV 機能がなくなるので要注意だ.
次は,同ファイルの中の
#ServerName www.example.com:80
とあるのを,コメントをはずし, IP アドレスを入力するか,あるいは
ServerName localhost:80
とする.
次は, /etc/rc.conf の設定だ.最後の一行に以下を追加しよう.
apache22_enable="YES"
これで設定は完了だ.FreeBSD マシンを再起動して,LAN 内の他のマシンから http://(IP address)/とやってみよう.ブラウ ザーに "It Works" と出れば成功だ(非常に素っ気ないが成功は成功だ).
WebDAV サーバーを,バージョン管理システムとして使うなら,subversion をインストールしておく必要がある.以下のようにしてインストールしよう.
> cd /usr/ports/devel/subversion
> sudo make -DWITH_MOD_DAV_SVN install clean
/usr/local/etc/apache22/Includeにdav.confを作る.同ディレクトリの .conf ファイルは,Apacheの設定ファイルの一部として扱われる.
> sudo vi /usr/local/etc/apache22/Includes/dav.conf
内容は以下のとおり,
Alias /dav /home/dav
DAVLockDB /tmp/DAVLock
<Location /dav>
DAV on
Order deny,allow
Allow from All
</Location>
上記で設定した dav ディレクトリを実際に設置し,オーナーなどを適切に設定する.
> cd /home
> sudo mkdir dav
> sudo chown www:www dav
これで Apache,WebDAV サーバーは完成だ.マシンをリブートしてから.別のホストから,http://(アドレス)/dav/としてアクセスしてみよう.
なお,重ねていうが,本稿では LAN 内での使用を想定している.WebDAV サーバーをファイアーウォール外などで使用する場合は,設定ファイルやセキュリティ対策を別途施そう.
また,WebDAVサーバーに認証をかけて Windows XP からアクセスする場合は,IEの詳細オプションで“統合Windows承認を使用する”のチェックをはずし,URLのおしりに "?" をつけるとうまくいくようだ.