设为首页 收藏本站
查看: 747|回复: 0

[经验分享] 安装subversion1.8和apache

[复制链接]

尚未签到

发表于 2017-1-2 10:46:22 | 显示全部楼层 |阅读模式
一.安装apr和apr-uti
wget http://mirror.bit.edu.cn/apache//apr/apr-1.4.8.tar.gz
tar zxvf apr-1.4.8.tar.gz
cd apr-1.4.8
./configure --prefix=/usr/local/apr
make && make install
验证:
#/usr/local/apr/bin/apr-1-config --version
1.4.8
wget http://mirrors.cnnic.cn/apache/apr/apr-util-1.5.2.tar.gz
tar zxvf apr-util-1.5.2.tar.gz
cd apr-util-1.5.2
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/
make && make install
验证:
#/usr/local/apr-util/bin/apu-1-config --version
1.5.2
二.安装sqlite3
wget http://www.sqlite.org/2013/sqlite-autoconf-3080000.tar.gz
tar zxvf sqlite-autoconf-3080000.tar.gz
cd sqlite-autoconf-3080000
./configure
make && make install

三.安装openssl
wget http://www.openssl.org/source/openssl-1.0.1.tar.gz
tar xzvf openssl-1.0.1.tar.gz
cd openssl-1.0.1
./config --prefix=/usr/local/openssl
make && make install

四.安装apache http server 和ssl model
wget http://mirrors.cnnic.cn/apache//httpd/httpd-2.2.25.tar.gz
tar zxvf httpd-2.2.25.tar.gz
export LDFLAGS=-ldl
cd httpd-2.2.25
./configure --prefix=/usr/local/apache2 --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/bin/apu-1-config --enable-modules=so --enable-dav --enable-maintainer-mode --enable-rewrite --enable-ssl --with-ssl=/usr/local/openssl
make && make install
设置开机启动
cp  /usr/local/apache2/bin/apachectl /etc/init.d/httpd
#编辑/etc/init.d/httpd,在第二行增加如下内容
#chkconfig: 2345 85 35
chkconfig httpd on

通过service httpd start启动服务,正常情况下会提示启动成功,通过在其他电脑上打开浏览器浏览这台服务器IP的80端口服务,如果出现It works 字样,恭喜您,安装成功
如果出现
httpd: Could not reliably determine the server’s fully qualified domain name,
只需要编辑httpd.conf 将里面的
#ServerName www.example.com:80注释去掉即可,,并改成ServerName 127.0.0.1:80
五.安装zlib
wget  http://jaist.dl.sourceforge.net/project/libpng/zlib/1.2.8/zlib-1.2.8.tar.gz
tar -xvzf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure
make && make install

六.安装subversion1.8

wget http://mirror.esocc.com/apache/subversion/subversion-1.8.4.tar.gz
tar zxvf subversion-1.8.4.tar.gz
mkdir -p ./subversion-1.8.4/sqlite-amalgamation
cp ./sqlite-autoconf-3080000/sqlite3.c ./subversion-1.8.4/sqlite-amalgamation
cd subversion-1.8.4
./configure --prefix=/opt/svn/subversion --with-apxs=/usr/local/apache2/bin/apxs --with-apr=/usr/local/apr/bin/apr-1-config --with-apr-util=/usr/local/apr-util/bin/apu-1-config  --with-zlib --enable-maintainer-mode
make && make install
验证:
#/opt/svn/subversion/bin/svnserve --version
svnserve, version 1.8.4 (r1534716)
七、整合Apache
拷贝模块
cp /opt/svn/subversion/libexec/mod_authz_svn.so /usr/local/apache2/modules/
cp /opt/svn/subversion/libexec/mod_dav_svn.so /usr/local/apache2/modules/
编辑http.conf文件
vi /usr/local/apache2/conf/httpd.conf
在最后面增加如下内容

#加载整合svn所需so文件
LoadModule dav_svn_module     modules/mod_dav_svn.so
LoadModule authz_svn_module   modules/mod_authz_svn.so
<Location />
DAV  svn
SVNParentPath /opt/svn/data/      #svn 根目录
SVNListParentPath On
SVNAutoversioning On
SVNReposName "svn"
AuthzSVNAccessFile /opt/svn/subversion/conf/authz.conf  #目录分组权限
AuthType Basic
AuthName "Subversion repository"
AuthUserFile /opt/svn/subversion/conf/passwd.conf   #密码验证文件
Require valid-user
</Location>

八、配置Subversion
1)建立svn版本库目录
mkdir -p /opt/svn/data/repos
可以多建版本库目录,这里我的目录是repos
2)建立svn版本库
svnadmin create /opt/svn/data/repos
因为apache的线程使用的用户是daemon
chown -R daemon /opt/svn/data/repos
chmod -R 755 /opt/svn/data/repos  

3)建立本地访问控制文件
/usr/local/apache2/bin/htpasswd -c /opt/svn/subversion/conf/passwd.conf  username
然后输入密码即可,默认是MD5加密的
添加新用户
/usr/local/apache2/bin/htpasswd  /opt/svn/subversion/conf/passwd.conf  username1

4)建立本地项目控制文件
touch /opt/svn/subversion/conf/authz.conf
本例authz.conf内容为:

[groups]  
#<groupname1>=<username1>,<username2>  
admin=username  
#[<versionLib>:projectName/directory]      
#@<groupsname>=<authorities>      
#<username>=<authorities>  
[/]      
@admin = rw        
#指定用户组成员可以读写根目录所有应用  
[repos:/abc/aaa]      
username1= rw      
#指定用户username1可以读写:/abc/aaa目录的文件

测试连接
1)启动apache
/usr/local/apache2/bin/apachectl start
2)再浏览器访问http://192.168.1.100/repos
     #本例服务器ip是192.168.1.100
     使用刚才创建的权限用户名与密码登录即可访问
九.安装neon

wget http://www.webdav.org/neon/neon-0.29.6.tar.gz
tar zxvf neon-0.29.6.tar.gz
cd neon-0.29.6
./configure --prefix=/usr/local/neon
make && make install

十、配置https
1:生成证书私钥

#128位rsa算法生成密钥
[iyunv@SVN-SERVER ~]# openssl genrsa 1024 > server.key
Generating RSA private key, 1024 bit long modulus
.....++++++
......++++++
e is 65537 (0x10001)

2.填写凭证申请书
被问及Common Name的时候,请输入你的web服务器的hostname 例如:SVN-SERVER.
被问及A challenge  password的时候,直接按回车继续。否则每次你运行/usr/local/httpd/apachectl start启动服务器的时候你都要输入密码。这也就意味着如果你的服务器因为某些原因重新启动了,除非你在服务器旁手动敲入了密码,否则你的web服务器就不会启动

[iyunv@SVN-SERVER ~]# openssl req -new -key server.key > server.csr
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:beijing
Locality Name (eg, city) [Default City]:beijing
Organization Name (eg, company) [Default Company Ltd]:none
Organizational Unit Name (eg, section) []:
Common Name (eg, your name or your server's hostname) []:SVN-SERVER
Email Address []:
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:


3:生成web证书

openssl req -x509 -days 365 -key server.key -in server.csr > server.crt


4:添加相关证书文件

cp ./server.crt /usr/local/apache2/conf
cp ./server.key /usr/local/apache2/conf


5.编辑httpd.conf
取消httpd.conf下面这句之前的'#',以启用ssl支持
Include conf/extra/httpd-ssl.conf


6.设置httpd-ssl.conf文件

cd /usr/local/apache2/conf/extra
vim httpd-ssl.conf
SSLCertificateFile "/usr/local/apache2/conf/server.crt"
SSLCertificateKeyFile "/usr/local/apache2/conf/server.key"


7.强制通过SSL方式访问svn服务
同时在httpd.conf 的<Location />配置里增加
SSLRequireSSL

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-322782-1-1.html 上篇帖子: Apache访问日志详解 下篇帖子: Apache Shiro 标签模式授权
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表