CentOS下搭建NGINX+SVN


因為沒有什么可以定制的, 所以svn直接使用系統自帶的包管理軟件安裝, 
以centos系列為例, 命令如下:
yum install subversion
然后是nginx的安裝:
mkdir -p /opt/soft 
groupadd web 
useradd http -g web -s /sbin/nologin 
cd /opt/soft 
wget http://sourceforge.net/projects/pcre/files/pcre/8.12/pcre-8.12.tar.gz 
wget http://www.openssl.org/source/openssl-1.0.0d.tar.gz 
tar zxvf pcre-8.12.tar.gz 
tar zxvf openssl-1.0.0d.tar.gz 
tar zxvf nginx-0.8.54.tar.gz 
cd nginx-0.8.54 
./configure --prefix=/opt/nginx --user=http --group=web --with-http_stub_status_module --with-http_ssl_module --with-md5=/usr/lib/ --with-pcre=/opt/soft/pcre-8.12 --with-openssl=/opt/soft/openssl-1.0.0d 
make 
make install 
 
root 指定到/data/wwwroot  vi /opt/nginx/conf/nginx.conf 
...
創建svn倉庫:s vnadmin create /data/svn
修改配置文件:  vi /data/svn/conf/authz 
[groups] 
admin=test #admin組里的成員 
[/] 
test = rw #成員對/目錄的權限: r讀,w寫 
vi /data/svn/conf/passwd 
[users] 
test = 123456 #用戶test的密碼 
vi /data/svn/conf/svnserve.conf 
anon-access = none 
auth-access = write 
password-db = passwd 
authz-db = authz 
realm = My First Repository
啟動svnserv   svnserve -d -r /data/svn 
也可以使用--listen-port參數指定端口,啟動多個倉庫
導入項目,假如項目目錄為svn://host/test , 創建svn倉庫副本(nginx的讀取目錄)
cd /data/wwwroot 
svn co svn://localhost/test --username test --password 123456
設置svn更新后自動更新nginx的讀取目錄:
vi /data/svn/hooks/post-commit 
#!/bin/sh 
svn up /opt/www/test/ --username "lyf" --password "123456" 
chown -R http:web /opt/www  #這一步或許可以濾過
給腳本增加可執行權限
chmod +x /data/svn/hooks/post-commit
大功告成, 現在可以測試一下了,svn更新后nginx讀取到的內容(訪問http)也隨之變化, 是不是比apache還有簡單


免責聲明!

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



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