服务器设置和教程 · 6 10 月, 2024

CentOS 搭建 Nginx + Subversion 環境(包括多個版本庫的配置)

CentOS 搭建 Nginx + Subversion 環境(包括多個版本庫的配置)

在當今的軟件開發中,版本控制系統是不可或缺的工具。Subversion(SVN)作為一種流行的版本控制系統,能夠幫助開發者有效地管理代碼版本。本文將介紹如何在 CentOS 系統上搭建 Nginx 和 Subversion 環境,並配置多個版本庫。

環境準備

在開始之前,確保你的 CentOS 系統已經更新到最新版本。可以使用以下命令進行更新:

sudo yum update -y

接下來,安裝必要的軟件包,包括 Nginx 和 Subversion:

sudo yum install epel-release -y
sudo yum install nginx subversion -y

安裝 Nginx

安裝完成後,啟動 Nginx 服務並設置為開機自啟:

sudo systemctl start nginx
sudo systemctl enable nginx

可以通過訪問伺服器的 IP 地址來檢查 Nginx 是否正常運行。如果看到 Nginx 的歡迎頁面,則表示安裝成功。

配置 Subversion

接下來,我們需要創建一個 Subversion 的版本庫。首先,選擇一個目錄來存放版本庫,然後使用以下命令創建版本庫:

sudo mkdir -p /var/svn
sudo svnadmin create /var/svn/myrepo

這裡我們創建了一個名為 “myrepo” 的版本庫。接下來,我們需要設置版本庫的訪問權限。編輯版本庫的配置文件:

sudo nano /var/svn/myrepo/conf/svnserve.conf

在文件中,取消以下行的註釋並設置相應的值:

[general]
anon-access = read
auth-access = write
password-db = passwd

然後,編輯密碼文件以添加用戶:

sudo nano /var/svn/myrepo/conf/passwd

在文件中添加用戶名和密碼:

[users]
user1 = password1
user2 = password2

配置 Nginx 以支持 Subversion

接下來,我們需要配置 Nginx 以支持 Subversion。首先,創建一個新的 Nginx 配置文件:

sudo nano /etc/nginx/conf.d/svn.conf

在文件中添加以下內容:

server {
    listen 80;
    server_name your_domain_or_ip;

    location /svn {
        proxy_pass http://127.0.0.1:3690;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

確保將 “your_domain_or_ip” 替換為你的域名或伺服器 IP 地址。然後,檢查 Nginx 配置是否正確:

sudo nginx -t

如果沒有錯誤,重新加載 Nginx 配置:

sudo systemctl reload nginx

啟動 Subversion 服務

現在,我們需要啟動 Subversion 服務。使用以下命令啟動 SVN 服務:

svnserve -d -r /var/svn

這樣就完成了基本的 Subversion 環境搭建。你可以通過以下 URL 訪問版本庫:

http://your_domain_or_ip/svn/myrepo

配置多個版本庫

如果需要配置多個版本庫,只需重複創建版本庫的步驟。例如,創建一個名為 “myrepo2” 的版本庫:

sudo svnadmin create /var/svn/myrepo2

然後在 Nginx 配置中添加相應的 location 配置:

location /svn/myrepo2 {
    proxy_pass http://127.0.0.1:3690/myrepo2;
}

完成後,重新加載 Nginx 配置即可。

總結

通過以上步驟,我們成功在 CentOS 上搭建了 Nginx 和 Subversion 環境,並配置了多個版本庫。這樣的設置不僅能夠提高代碼管理的效率,還能夠為團隊協作提供便利。如果你需要穩定的 VPS 服務來支持你的開發環境,Server.HK 提供多種選擇,滿足不同需求。