![[Linux] PHP程序员玩转Linux系列-Ubuntu配置SVN服务器并搭配域名 [Linux] PHP程序员玩转Linux系列-Ubuntu配置SVN服务器并搭配域名](https://image.shishitao.com:8440/aHR0cHM6Ly9ia3FzaW1nLmlrYWZhbi5jb20vdXBsb2FkL2NoYXRncHQtcy5wbmc%2FIQ%3D%3D.png?!?w=700)
在线上部署网站的时候,大部分人是使用ftp,这样的方式很不方便,现在我要在线上安装上SVN的服务器,直接使用svn部署网站。因为搜盘子的服务器是ubuntu,因此下面的步骤是基于ubuntu的。
安装subversion
apt-get install subversion
创建仓库目录
svnadmin create /home/ubuntu/svnrepos/
配置svnserve.conf
编辑/home/ubuntu/svnrepos/conf/svnserve.conf
把下面内容前面的#去掉
anon-access = none
auth-access = write
password-db = passwd
authz-db = authz
配置用户
编辑/home/ubuntu/svnrepos/conf/authz
[groups]
svn_users=sopans,sopans2
[/]
@svn_users= rw
一组用户,这组用户可以读写
配置密码
编辑/home/ubuntu/svnrepos/conf/passwd
[users]
sopans=www.sopans.com
开启SVN服务
使用命令svnserve -d -r /home/ubuntu/svnrepos/ -d是后台服务 -r是使用目录
使用ps命令查看是否启动成功
链接svn测试,地址是svn://ip地址,用户名和密码都是上面配置好的,测试成功。
配置域名,apache安装svn模块
域名要解析过来比如我的这个测试域名mysvn.sopans.com
apt-get install libapache2-svn
配置虚拟主机
<VirtualHost *:>
ServerName mysvn.sopans.com
<Location />
DAV svn
SVNPath /home/ubuntu/svnrepos/
AuthType basic
AuthName "svn"
AuthUserFile /home/ubuntu/svnrepos/conf/passwd
#AuthzSVNAccessFile /home/ubuntu/svnrepos/conf/authz
require valid-user
</Location>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
1.浏览器直接打开遇到错误,一直弹登录框
修改/home/ubuntu/svnrepos/conf/passwd这个文件,密码不能用明文,需要使用htpasswd这个加密一下,百度搜有在线工具
2.提交的时候遇到错误:Can't open file '/home/ubuntu/svnrepos/db/txn-current-lock': Permission denied
这个目录/home/ubuntu/svnrepos/的权限给到777
3.这样就不必使用svnserve启动了,直接链接这个域名mysvn.sopans.com就可以了
浏览器打开输入用户名密码也可以查看
在部署sopans的时候遇到的问题系列,网站www.sopans.com
1.PHP程序员玩转Linux系列-怎么安装使用CentOS
6.PHP程序员玩转Linux系列-Linux和Windows安装nginx
8.PHP程序员玩转Linux系列-Nginx中的HTTPS
9.PHP程序员玩转Linux系列-使用supervisor实现守护进程