Windows で Apache + Subversion を連携させる

環境はあいかわらず Windows 2000

Apache のインストール

Download - The Apache HTTP Server Project から apache_2.2.9-win32-x86-no_ssl-r2.msi をダウンロードして、ふつうにインストールします。
2php : Apacheのインストール(Windows) などが参考になります。
設定は下記のとおりにしました。

Network Domain
localhost
Server Name
localhost
Administrator's Email Address
自分のメールアドレス (どうせローカルのみのサーバなので、なんでも良い)

http://localhost に接続して、起動できているか確認します。「あなたの予想に反して・・・」というもったいぶったメッセージなくなったようです ("It works!" とだけ出ます)。

Apache2.2\conf\httpd.conf は、下記のように編集。

# DocumentRoot "C:/Program Files/Apache2.2/htdocs"
DocumentRoot "D:/www"          # 自分の好きなディレクトリを指定します

<Directory />
#     Options FollowSymLinks   # とりあえず、ぜんぶはずしました
#     AllowOverride None
#     Order deny,allow
#     Deny from all
</Directory>

Subversion のインストール

subversion: ドキュメント & ファイル: Windows Apache 2.2.x から svn-1.4.6-setup.exe をダウンロード&インストールします。
インストールしたディレクトリの Subversion\bin に、Apache との連携に必要となる

  • mod_authz_svn.so
  • mod_dav_svn.so

が含まれています。

ApacheSubversion との連携

Apache2(Windows版)でSubversionをネットワークに対応 - てんぷらメモ を参考にしつつ。
httpd.conf を下記のように編集。

# 下記 2 行を有効に
LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so

# 下記を追加
LoadModule dav_svn_module "D:/BIN/Subversion/bin/mod_dav_svn.so"
LoadModule authz_svn_module "D:/BIN/Subversion/bin/mod_authz_svn.so"
<Location /svn>
  DAV svn
  SVNParentPath "D:/svnprojects"
</Location>

これで、Apache を再起動し、http://localhost/svn/{SVNプロジェクトフォルダ} にアクセスできれば OK です。
Subversion クライアントで http://localhost/svn/{SVNプロジェクトフォルダ} からチェックアウトすることでも確認できます。