]> Apache 2.2 (x64) on WindowsにSubversionを導入した | FullAstern!

Notes

メモ書き

Apache 2.2 (x64) on WindowsにSubversionを導入した

「リビジョン管理?自分しか弄らんのにんな大袈裟もんはよかー」 とかほざいてたら順調に脳内コミットログがこんがらがってきたので つい先日、自宅のサーバに個人プログラムで使う用のSubversionを導入しました。

  • サーバ: Apache 2.2 (x64) on Windows Home Server 2011
  • Subversion: SVN 1.8.8 + mod_dav_svn

物資調達

Apache 2.2 x64
Anindya's Blog からapache_2.2.24-x64-no-ssl.msiをダウンロード。 ウィザードに従ってインストールします。 インストール先はC:\usr\apacheとします。
SVN 1.8.8 x64
サーバが64bitなのでModulesも64bitのブツが必要です。 Apache Haus からMod Subversion 1.8.8 for Apache 2.2.x x64をダウンロード。

Subversionのインストール

適当なディレクトリ (ここではC:\usr\svnとします) に先程ダウンロードしたSubversionのzipを解凍。

次に、ApacheとSubversionそれぞれのbinディレクトリにPATHを通します。 環境変数のPATHにC:\usr\apache\bin;C:\usr\svn\bin;を追加。

httpd.confの編集

モジュールを読み込ませます。 mod_davとmod_dav_fsが必要なのでコメントアウトを解除。

LoadModule dav_module modules/mod_dav.so&lf;LoadModule dav_fs_module modules/mod_dav_fs.so&lf;

mod_dav_svnとmod_authz_svnを追加。

LoadModule dav_svn_module /usr/svn/modules/mod_dav_svn.so&lf;LoadModule authz_svn_module /usr/svn/modules/mod_authz_svn.so&lf;

今回はサブドメインで運用するので SUSH-i LOGさんの記事 を参考にVirtualHostディレクティブ内に設定を記述しました。 各リポジトリは[DocumentRoot]/repos/配下に置くことにします。

<VirtualHost *:80>&lf;    ServerName svn.example.com&lf;    DocumentRoot "D:/www/svn"&lf;    ErrorLog "logs/error_dav_svn.log"&lf;    CustomLog "logs/access_dav_svn.log" combined&lf;&lf;    <Location /repos>&lf;        DAV svn&lf;&lf;        SVNListParentPath on&lf;        SVNParentPath "D:/www/svn/repos"&lf;&lf;        <LimitExcept GET PROPFIND OPTIONS REPORT>&lf;            AuthType Digest&lf;            AuthName "svn"&lf;            AuthUserFile "D:/www/svn/.htdigest"&lf;            Require valid-user&lf;        </LimitExcept>&lf;    </Location>&lf;</VirtualHost>&lf;

Test Configurationして問題なければApacheを再起動。

動作確認

テスト用リポジトリを作ります。 コマンドラインから以下を実行。

svnadmin create D:/www/svn/repos/test&lf;

適当なSVNクライアントでhttp://svn.example.com/repos/test にCheckoutできればOK。

© FullAstern!