Linux svn与apache整合
1. svn配置
2. svn整合apache:
3. svn使用mysql登陆
4. svn: Can't create directory
1. svn配置
1.1 创建svn项目svnadmin create /svn/projects/test
1.2 赋予测试用户权限vi /svn/conf/authz
[groups]
Tester=test,admin
Developer=admin
[test:/]
@Tester = rw
*=r
2. svn整合apache:
vi httpd.conf:
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
<Location /svn>
DAV svn
SVNParentPath /subversion/project (此处配置你的版本库根目录)
AuthType Basic
AuthName "Subversion repository" (此处字符串内容修改为提示对话框标题)
AuthUserFile /subversion/passwd (此处修改为版本库用户的文件,用apache 的 htpasswd命令生成)
AuthzSVNAccessFile /subversion/auth (此处修改为访问版本库权限的文件)
Require valid-user
</Location>
添加用户验证:
# /usr/local/apache2/bin/htpasswd –cm /subversion/passwd dyf (第一次添加用户需先创建文件,所以有参数-c,以后添加用户可以不用添加参数)
3. svn使用mysql用户登陆
httpd.conf
LoadModule mysql_auth_module modules/mod_auth_mysql.so
vi httpd.conf:
<Location /svn>
DAV svn
SVNParentPath /repository #这个就是SVN的父级目录,如果你只有一个库可以写成SVNPath /path
AuthzSVNAccessFile /repository/auth/authz #权限验证文件
AuthName "Please Login.."
AuthType Basic
AuthMYSQLEnable on
AuthMySQLUser authuser #访问mysql的用户名
AuthMySQLPassword "Your Password Here" #访问mysql的密码
AuthMySQLDB auth
AuthMySQLUserTable users #用户验证的数据库
AuthMySQLNameField user_name #用户验证数据库的用户名字段
AuthMySQLPasswordField user_passwd #用户验证数据库的密码字段
AuthMySQLPwEncryption none #加密
require valid-user
</Location>
4. svn: Can't create directory '/svn/projects/test/db/transactions/0-1.txn': Permission denied
4.1 SELinux的东西在捣鬼,运行“setenforce 0”停止它,问题解决。修改/etc/sysconfig/selinux,把SELINUX设定为disable,下次启动系统后将不会自动启动SElinux。
4.2 权限问题:chown -R apache:apache /home/svn/repos
- 最新评论