大家照此配置如果有我問題請反饋給我,以幫助更多的人排除問題。
針對redhat5.5版本,更高版本在configure時,不用那么多參數,另外需要的模塊可以去/etc/httpd/modules下面去取
A. (只對公司內部:從apache+svn文件夾)獲取并編譯httpd-2.2.23,apr-1.4.6,apr-util-1.4.1,subversion1.6.1
1. apr安裝:
./configure
make
make install
2. apr-util安裝:
./configure --with-apr=/usr/local/apr
make
make install
3. apache2 編譯參數
./autogen.sh
./configure --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config --enable-dav --enable-so --enable-maintainer-mode --enable-ssl=shared --enable-module=most --enable-shared=most --enable-rewrite
make
make install
4. subversion編譯參數
./configure --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr/bin/apu-1-config --with-apxs=/usr/local/apache2/bin/apxs --with-ssl
make
make install
B. 修改配置文件
1。修改/usr/local/apache2/conf/httpd.conf
模塊配置
#LoadModule dav_module         modules/mode_dav.so
#LoadModule dav_fs_module      modules/mod_dav_fs.so
#LoadModule dav_lock_module    modules/mod_dav_lock.so
LoadModule dav_svn_module     modules/mod_dav_svn.so
LoadModule authz_svn_module   modules/mod_authz_svn.so
LoadModule ssl_module         modules/mod_ssl.so
#
因為要開啟兩個apache,還有一個是bugfree的服務器,所以修改監聽端口(這個服務器的ssl端口為443,
所以bugfree服務器的ssl配置conf/extra/http-ssl.conf修改為監聽4433,bugfree那個httpd.conf修改為監聽8122端口)
Listen 8080

2。編輯conf/extra/httpd-dav.conf,加入如下內容,其余內容全部刪除,

這樣配置可以開啟多個svn倉庫,每個倉庫可以擁有獨立的權限

 

<Location /svn/>
         AddType text/plain cpp
         DAV svn
         SVNParentPath /svn/project
         SVNListParentPath On
         AuthType Basic
         AuthName "Subversion respository"
         AuthUserFile /svn/passwd.conf
         AuthzSVNAccessFile /svn/authz.conf
         Require valid-user
</Location>
<Location /test_repo>
         DAV svn
         SVNListParentPath On
         SVNPath /svn/project/test_repo
         AuthType Basic
         AuthUserFile /svn/passwd.conf
         AuthzSVNAccessFile /svn/authz.conf
         AuthName "Subversion respository"
         Require valid-user
</Location>
<Location /pms>
         DAV svn
         SVNListParentPath On
         SVNPath /svn/project/pms
         AuthType Basic
         AuthUserFile /svn/passwd.conf
         AuthzSVNAccessFile /svn/authz.conf
         AuthName "Subversion respository"
#         Satisfy Any
         Require valid-user
</Location>         

3。接下來配置ssl,需要以下幾個步驟:

第一步,創建key和request: 
openssl req -new > new.cert.csr
第二步,從key中刪除passphrase(可選): 
openssl rsa -in privkey.pem -out new.cert.key
第三步,把request轉換成signed sert: 
openssl x509 -in new.cert.csr -out new.cert.cert -req -signkey new.cert.key -days 1825
第四步,把cert和key文件拷貝到適當的位置: 
cp new.cert.cert /usr/local/apache2/conf/server.crt 
cp new.cert.key /usr/local/apache2/conf/server.key

 

4。subversion的配置

在/svn下創建authz.conf文件,內容如下

 

[groups]
Admin=root
Develop=he.ql,l.cj,test_1,test_2,zhang.hm
[/project/pms]
@admin=rw
@develop=rw

[/project/test_repo]
*=rw 

[/]
@admin=rw
@develop=r
C.設置密碼
/usr/local/apache2/bin/htpasswd -bc /svn/htpasswd root <如果為空密碼就是空的>
這樣就會在/svn下創建htpasswd文件,密碼采用加密的方式。

D.創建倉庫
svnadmin create /svn/project/mark
svnadmin create /svn/project/hql
svnserve -d -r /svn/project/

E.到此啟動apahce就可以測試了:(修改一下/svn目錄下文件的權限)

啟動apache2命令:

/usr/local/apache2/bin/apachectl start

 

http://ip/svn/test,同樣也可以使用svn客戶端來訪問svn list http://ip/svn/test,輸入用戶名密碼后就可以訪問新建的test庫了。同樣支持windows的svn客戶端訪問。


Bugfree安裝:照搬bugfree安裝參考官方網站說明,所有文件需要全新覆蓋,在安裝的時候不能使用舊的數據庫文件。安裝之后可以使用phpmyadmin備份
在執行網頁安裝之前:

1。在/opt/lamp/htdocs/bugfree3.0.3下新建目錄BugFile

mkdir Bugfile;chmod 777 BugFile

2。修改bugfree下所有文件的權限

chmod 777 bugfree3.0.3 -R

這樣仍然不行,需要根據安裝頁面的效果去修改文件以及文件下面的所有文件的權限,最好根據安裝頁面第二個頁面提示的狀態進行操作

3。修改/opt/lamp/my.cnf 以避免mysqld無權限擴大和刪除配置文件的問題,頁面首頁的亂碼cbException通常由這個文件的權限分配導致

user = nobody

user=$(你的user_ID,比如root)
另外,需要注意查看/tmp 目錄是否滿了,否則會出現數據庫無法啟動的問題
4.配置備份工具phpmyadmin
默認情況下登錄localhost/phpmyadmin 頁面會看到權限錯誤
修改/opt/lampp/etc/extra/httpd-xampp.conf 中的
<Directory "opt/lampp/phpmyadmin">
    
#添加這行內容
    Require all granted
<Directory>