SVN+WebDAV+SSLをポートを分けて設定
SVNリポジトリをwebDAVベースで構築する場合、Apacheのconfを新たに作成する方法を以前にメモしておいたけど、今回は既存のhttpd-ssl.confに記述する方法をメモ。今回の方が合理的な運営ポリーシーだと思う。
更にポートの分離も導入。
構築環境は以下の通り
--------------
FreeBSD 6.2.x
Apache 2.2.x
*SVN、webDAV、SSLは設定済み
リポジトリPath
/home/svn/repos/
URI
https://example.co.jp:10001/
--------------
1.まずListenするポートを記述(30~40行目あたり)
----------------
Listen 10001
----------------
2.<VirtualHost>ディレクティブを加筆
---------------------------------------------
<VirtualHost _default_:10001>
ServerName example.co.jp
DocumentRoot /home/svn/
<Directory "/home/svn/www">
AuthType Basic
AuthUserFile /home/svn/etc/.htpasswd_admin
AuthName "Subversion Authentication"
Require valid-user
AllowOverride None
Order allow,deny
Allow from all
</Directory>
<Location /projectA/plan1>
DAV svn
SVNAutoversioning on
SVNPath /home/svn/projectA/plan1
AuthType Basic
AuthUserFile /home/svn/etc/.htpasswd_admin
AuthName "Subversion Authentication"
Require valid-user
</Location>
SSLEngine on
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLCertificateFile /usr/local/etc/apache22/server.crt
SSLCertificateKeyFile /usr/local/etc/apache22/server.key
</VirtualHost>
---------------------------------------------
最低限、Basic認証を入れておく。
htpasswdは/home/svn/etc/の中
証明書ファイルは自己証明を生成して
/usr/local/etc/apache22/
以下に設置。
リポジトリが増えたら
----------------------
<Location /projectB/plan1>
DAV svn
SVNAutoversioning on
SVNPath /home/svn/projectB/plan1
AuthType Basic
AuthUserFile /home/svn/etc/.htpasswd_admin
AuthName "Subversion Authentication"
Require valid-user
</Location>
----------------------
を追記
*リポジトリ生成はあらかじめ行う
# mkdir /home/svn/projectB/plan2
# svnadmin create /home/svn/projectB/plan2