1. 安装软件包
sudo aptitude install subversion libapache2-svn apache2 libapache-mod-dav
2 Enable SSL
先备份apache配置
sudo cp -rf /etc/apache2 /etc/apache2_backup
sudo a2enmod ssl
sudo sh –c “echo ‘Listen 443’ >> /etc/apache2/ports.conf”
3. SSL认证
如果ubuntu版本小于Feisty
sudo apache2-ssl-certificate
如果ubuntu版本大于Feisty
sudo aptitude install ssl-cert
sudo mkdir /etc/apache2/ssl
sudo /usr/sbin/make-ssl-cert /usr/share/ssl-cert/ssl/eay.cnf /etc/apache2/ssl/apache.pem
这里可以填写主机名。
4. 创建Virtual Host
sudo cp /etc/apache2/sites-available/default /etc/apache2/sites-available/$SITENAME
$SITENAME自行指定,这里指定为ssl, 下文中$SITENAME用ssl代替.
sudo vim /etc/apache2/sites-available/$SITENAME
修改为:
NameVirtualHost *:443
#这里增加
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/apache.pem
SSLProtocol all
SSLCipherSuite HIGH:MEDIUM
5 . 使能站点 Enable the site
sudo a2ensite $SITENAME
sudo /etc/init.d/apache2 restart
警告可以忽略
6. 增加代码仓库
sudo mkdir /home/svn/
sudo svnadmin create /home/svn/$REPOS
这里$REPOS自己指定,本文指定为myrepos.
sudo chown –R www-data:www-data /home/svn/$REPOS
sudo chmod –R g+ws /home/svn/$REPOS
7 增加Basic Authentication
sudo htpasswd –c –m /home/svn/$REPOS/conf/passwd $AUTH_USER
8 使能配置WebDAV和SVN
修改/etc/apache2/mods-available/dav_svn.conf为
==========
DAV svn
SVNParentPath /home/svn
AuthType Basic
AuthName “Subversion Repository”
AuthUserFile /home/svn/$REPOS/conf/passwd
Require valid-user
SSLRequireSSL
==========
如果是非匿名访问,需要加注释
#
#
9. 重起apache
sudo /etc/init.d/apache2 restart
10 .测试WEB访问
https://localhost/svn/$REPOS
此时需要通过密码才能访问.输入用户名$AUTH_USER和对应密码
http://localhost/svn/$REPOS
403-forbidden