SVNadmin
Centso+Apache+Subversion+Jsvnadmin的管理環境搭建,我以前還做過Github的環境GitLab之安裝-yellowcong
1、Apache安裝
1.1安裝
# 安裝 httpd yum install httpd httpd-devel#啟動服務 service httpd start #設置開機啟動 chkconfig httpd on#查看是否開機啟動 systemctl list-unit-files |grep httpd- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
1.2配置端口和ServerName
設定端口號、配置ServerName,因為沒有dns服務配置 ,所以需要修改 這個ServerName
#修改配置文件 vi /etc/httpd/conf/httpd.conf#配置ServerName Servername localhost:80- 1
- 2
- 3
- 4
- 5
修改后
1.3開啟80端口
如果發現沒有iptables這個文件,就說明iptables沒有安裝,可以查看我的iptables安裝的教程,http://blog.csdn.net/yelllowcong/article/details/78229862,安裝完了,在執行下面的操作
#編輯iptables vim /etc/sysconfig/iptables#開放80端口 -A INPUT -p tcp -m tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT#重啟服務 restart iptables.service#查看80端口是否開放 iptables -L -n- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
1.4服務器查
在瀏覽器中,輸入ip地址,查看apache服務是否啟動
2、SVN安裝
2.1安裝 subversion
subversion,需要安裝依賴的模塊 mod、dev、sun
#安裝subversion yum install mod_dav_svn subversion#安裝完成后,需要重啟 apache服務 service httpd restart- 1
- 2
- 3
- 4
- 5
2.2查看subversion是否安裝(有問題)
#查看是否安裝好了這些模塊 ls /etc/httpd/modules/ | grep svn#查看svn的版本 svn --version- 1
- 2
- 3
- 4
- 5
- 6
/etc/httpd/modules/目錄下的svn模塊
版本信息
2.3創建庫
創建svn的庫,用于存放代碼,這個庫在配置過程中會用到
mkdir /svn- 1
2.4配置subversion.conf
#進入到配置文件目錄 vim /etc/httpd/conf.d/subversion.conf#添加下面的到subversion.conf 文件中 LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so <Location /svn/> //多庫的模式 DAV svnSVNListParentPath onSVNParentPath /svn //這個表示 存儲的地址AuthType BasicAuthName "Authorization"AuthUserFile /svn/passwd.http //用戶授權AuthzSVNAccessFile /svn/authz //訪問控制Require valid-user </Location> RedirectMatch ^(/svn)$ $1/#創建用戶授權和訪問控制空文件 touch /svn/passwd.http touch /svn/authz##重啟apache服務 service httpd restart- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
通過“http://localhost/svn/” 來訪問倉庫列表,如果想讓“http://localhost/svn”也起作用的話,需要在的后面增加重定向的設置:RedirectMatch ^(/svn)1/ ,當然也可以采用RewriteEngine之類的辦法。
服務啟動成功
3、jsvnadmin安裝
安裝jsvadmin前,需要安裝tomcat,如果不會的,可以查看教程:http://blog.csdn.net/yelllowcong/article/details/75944304
3.1下載安裝包
#下載安裝包, 這個安裝包是我從外國網站下的,真不容易啊 wget http://yellowcong.qiniudn.com/svnadmin-3.0.5.zip#解壓到指定的文件夾 unzip svnadmin-3.0.5.zip -d svnadmin#刪除包 rm svnadmin-3.0.5.zip- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
解壓后的目錄結構,我們需要里面的svnadmin.war包
3.2安裝war包
#停止tomcat,然后解壓war包 unzip svnadmin.war -d svnadmin#刪除war包 rm svnadmin.war- 1
- 2
- 3
- 4
- 5
- 6
war包解壓后的目錄結構,我們需要修改的是WEB-INF目錄下的jdbc.properties這個文件
3.3配置jdbc.properties
配置數據庫端口,數據庫,數據庫用戶名和密碼
db=MySQL#MySQL MySQL.jdbc.driver=com.mysql.jdbc.Driver MySQL.jdbc.url=jdbc:mysql://127.0.0.1:3306/svnadmin?characterEncoding=utf-8 MySQL.jdbc.username=root MySQL.jdbc.password=root- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
3.4導入表
Mysql如果不會安裝,可以查看我的教程,http://blog.csdn.net/yelllowcong/article/details/75934201
需要導入腳本db/mysql5.sql 和db/lang/en.sql
#創建數據庫,一定要是utf8的,不然,會后悔的,會遇后面的錯誤 create database if not exists svnadmin default character set utf8;#使用數據庫 use svnadmin#導入數據 source /usr/local/svnadmin/db/mysql5.sql source /usr/local/svnadmin/db/lang/en.sql#查看表 show tables- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
導入數據
查看表數據
4、啟動Tomcat
#啟動服務 ./startup.sh#查看日志信息 tail -f -n 100 logs/catalina.out- 1
- 2
- 3
- 4
- 5
- 6
常見錯誤
服務器打開xx:port/svnadmin,居然報錯了,尷尬了
發生錯誤,請聯系 QQ 56099823 或 報告一個Issue,以下是錯誤信息: org.apache.jasper.JasperException: An exception occurred processing JSP page /login.jsp at line 28 25: } 26: %> 27: 28: 29:- 1
- 2
查看tomcat的日志文件,發現,大概可以定位成,是數據庫的編碼問題導致的。
java.sql.SQLException: Incorrect string value: '\xE4\xB8\xAD\xE6\x96\x87' for column 'lbl' at row 1- 1
解決方法
重新導入數據庫,使用utf8的編碼,問題就解決了
#創建數據庫,一定要是utf8的,不然,會后悔的,會遇后面的錯誤 create database if not exists svnadmin default character set utf8;#使用數據庫 use svnadmin#導入數據 source /usr/local/svnadmin/db/mysql5.sql source /usr/local/svnadmin/db/lang/en.sql- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
問題完美解決
總結
- 上一篇: Linux进程间通信(2)信号量
- 下一篇: GraphEmbedding - Nod