linuxCentOS6.8搭建Apache,用http訪問svn


前提:SVN已經安裝配置ok,可以正常訪問
目前本人svn用小烏龜客戶端svn協議訪問地址為:svn://ip:3691/opt/svn/repository,端口后面的是svn倉庫的路徑
那么如果從svn協議走向http協議的訪問呢,請跟我走。
1.檢查是否安裝
httpd:rpm -qa|grep http
如果有顯示httpd的相關信息,則已安裝,如下本人安裝的信息,此時可略過第2步驟,否則進行第2步驟操作。
也可以選擇卸載重裝: yum remove httpd
 
2.安裝服務
yum install httpd
 
3.修改apache端口
vi /etc/httpd/conf/httpd.conf,大概在文件的136行的位置,也可以搜索一下Listen關鍵字快速查找。
由於http服務有默認端口比如80,8001,建議讀者修改端口,因為很有可能被其他服務占用,比如gitlab,在此我保留了默認端口8001。
 
4.修改/etc/httpd/conf.d下的subversion.conf文件,在末尾處添加如下代碼
<Location /svn> #此處/svn是代理的路徑,這樣配置后就不需要像svn協議一樣,訪問倉庫路徑,直接http://ip:port/svn就可以訪問到SavePath存儲的倉庫了!
DAV svn
SVNPath /opt/svn/repository #指向倉庫路徑,此處有坑,看清楚是SVNPath 並不是SVNParentPath,筆者由於是copy的配置文件代碼修改,就落坑了注意
AuthType Basic
AuthName "SVN Repository"
AuthUserFile /opt/svn/repository/conf/webpasswd #請看5步驟講解
AuthzSVNAccessFile /opt/svn/repository/conf/authz #對應權限控制文件絕對路徑
Require valid-user
</Location>
5.AuthUserFile 配置釋義(原本對應svn帳號密碼passwd文件)
由於svn默認是明文密碼,而http並不支持明密碼 所以這里需要單獨生成passwd文件 此處命名為webpasswd,
當用svn協議訪問的時候是以passwd文件為主,當用http協議訪問的時候是以webpasswd為主。具體操作如下:
進入到倉庫的conf配置目錄,在此筆者
cd /opt/svn/repository/conf
htpasswd -mc webpasswd admin
#執行這句話輸入兩次密碼(此密碼會被加密),admin為用戶名,conf下就會多出一個webpasswd 文件;
-c:創建一個加密文件;
-m:默認采用MD5算法對密碼進行加密;
-d:采用CRYPT算法對密碼進行加密;
-p:不對密碼進行進行加密,即明文密碼;
-s:采用SHA算法對密碼進行加密;
-b:在命令行中一並輸入用戶名和密碼而不是根據提示輸入密碼;
-D:刪除指定的用戶
vi webpasswd #將會看到admin用戶和加密密碼,下面是筆者的webpasswd文件內容
 
需要注意:第二次添加新用戶,只需要htpasswd webpasswd 用戶名就可以了,不需要再用 -mc,否則會覆蓋原來的webpasswd文件,
導致原先創建的用戶密碼丟失
 
6.到此,apache配置完成,啟動http,如下兩種方式,筆者更傾向於第一種
service httpd restart
或者
/etc/init.d/httpd restart
 
如果在啟動的時候遇到如下問題的
1> ServerName導致
httpd: Could not reliably determine the server's fully qualified domain name
2> 或者無權限啟動監聽端口
 
針對1>的解決方案,修改httpd.conf文件,找到serverName,修改如下
 
針對2>apache無法監聽端口解決方案
如果你能使用semanage命令,則不需要安裝下一步
yum -y install policycoreutils-python
查看http的端口: semanage port -l|grep http
添加端口: semanage port -a -t http_port_t -p tcp 8001
再啟動,將會看到啟動成功
 
7.瀏覽器或者客戶端都可以用http協議訪問(注:如果訪問不了,請看看防火牆是否添加了該端口號)
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM