|
Apache 2.2.8 on Windows に対して、SubVersion 1.4.6 をインストールしてみた。 * SubVersionのインストール [#e6c206bc] *** SubVersion 1.4.6のダウンロードとインストール [#h198673b] - [[ここ:http://subversion.tigris.org/servlets/ProjectDocumentList?expandFolder=91&folderID=91]]にあるファイルはApache 2.2に対応していないそうなので、[[ここ:http://subversion.tigris.org/servlets/ProjectDocumentList?folderID=8100&expandFolder=8100&folderID=91]]にある svn-1.4.6-setup.exe ファイルをダウンロードし、インストールする。 *** SubVersion 1.4.6の設定 [#q625500a] - SVNの親パスを作成 >md D:\Inetpub\svn - "test"プロジェクトのリポジトリを作成、初期化 >svnadmin create D:\Inetpub\svn\test - "test"の下に、"trunk"、"tags"などを作成 >svn mkdir file://localhost/d:/Inetpub/svn/test/trunk -m "trunkディレクトリ作成" >svn mkdir file://localhost/d:/Inetpub/svn/test/tags -m "tagsディレクトリ作成" >svn mkdir file://localhost/d:/Inetpub/svn/test/branches -m "branchesディレクトリ作成" - 試しに、テストファイルをリポジトリにインポート >svn import -m "Test.txtのインポート" D:\testdir file://localhost/d:/Inetpub/svn/test/trunk *** Apache 2.2.8の設定(httpd.conf) Part.1 [#u3bea147] - httpd.conf で以下の記述を有効化 LoadModule dav_module modules/mod_dav.so LoadModule dav_fs_module modules/mod_dav_fs.so - 更に、LoadModule群の最後に、以下の記述を追加 LoadModule dav_svn_module "C:/Program Files/Subversion/bin/mod_dav_svn.so" LoadModule authz_svn_module "C:/Program Files/Subversion/bin/mod_authz_svn.so" - 一度、Apache2を再起動し、正常に起動するか確認 -- もし動かない場合は、C:\Program Files\Subversion\bin\libdb44.dll を、%Apache_Install_Dir%\bin の下にコピーしてみる --- ※ 私の環境ではコピーの必要はなかったので試せていません。 *** Apache 2.2.8の設定(httpd-svn.conf) Part.1 [#fe834419] - %Apache_Install_Dir%\conf\extra\httpd-svn.conf を作成し、以下の記述を追加 <Location /svn> DAV svn SVNParentPath "D:/Inetpub/svn" </Location> -- セパレータは必ず"/"。"\"ではNG *** Apache 2.2.8の設定(httpd.conf) Part.2 [#k9203c0a] - httpd.conf の最後の方で以下の記述を追加 # SubVersion Include conf/extra/httpd-svn.conf - Apacheを再起動して、http://localhost/svn/test が閲覧できればOK * 認証機能の追加 [#d2e667b4] *** Apache 2.2.8の設定(httpd.conf) Part.3 [#hfee3d33] - httpd.conf で以下の記述を有効化 LoadModule auth_basic_module modules/mod_auth_basic.so LoadModule authn_file_module modules/mod_authn_file.so *** Apache 2.2.8の設定(httpd-svn.conf) Part.2 [#waa11a2c] - %Apache_Install_Dir%\conf\extra\httpd-svn.conf を編集し、以下の記述を追加 AuthType Basic AuthName "Subversion Repositories" AuthUserFile "C:/Apache/conf/svnpasswd" Require valid-user AuthzSVNAccessFile "C:/Apache/conf/svnaccess" *** AuthUserFileの作成 [#a28f000b] - %Apache_Install_Dir%\bin\htpasswd.exe を実行し、認証ユーザーを作成 >htpasswd.exe -c "C:/Apache/conf/svnpasswd" guest *** AuthzSVNAccessFileの作成 [#z7d06b0c] - テキストエディタでsvnaccessファイルを作成(以下、設定例) # Standard Access Permission [/] jomora = rw * = r [test:/trunk] guest = rw * リポジトリ一覧の公開 [#y0aca016] *** Apache 2.2.8の設定(httpd-svn.conf) Part.3 [#bcd6b6a9] - %Apache_Install_Dir%\conf\extra\httpd-svn.conf を編集し、以下の記述を追加 SVNListParentPath on - 上記の設定だけだと、[[Subversionの不具合:http://subversion.tigris.org/issues/show_bug.cgi?id=2753]]の影響で、一覧が表示されないので、 - 上記の設定だけだと、[[Subversionの不具合:http://subversion.tigris.org/issues/show_bug.cgi?id=2753]]の影響で、Not Found(404)になるので、 <Location /svn> を <Location /svn/> に変更。 以後、http://jomora.net/svn/ でリポジトリ一覧が閲覧可能。 ※ http://jomora.net/svn では閲覧不可