持续集成之二:搭建SVN服务器--Apache HTTP Server安装
安装环境
Red Hat Enterprise Linux Server release 7.3 (Maipo)
jdk1.7.0_80
httpd-2.4.35.tar.gz
apr-1.6.5.tar.gz、apr-util-1.6.1.tar.gz、apr-iconv-1.2.2.tar.gz
pcre-8.42.tar.gz
安装依赖gcc,gcc-c++,uuid-devel,libuuid-devel
Apache HTTP Server是Web服务器,支持http、SSL协议,Subversion默认使用svn://ip:3690访问,整合Apache HTTP Server之后就可以使用浏览器http(s)方式访问。
一、安装Apache HTTP Server
在线安装:yum install httpd -y
离线安装:
(1)Apache HTTP Server下载
httpd-2.4.35.tar.gz,下载地址:http://httpd.apache.org/download.cgi
(2)依赖包下载 apr、apr-util、apr-iconv和pcre
apr-1.6.5.tar.gz、apr-util-1.6.1.tar.gz、apr-iconv-1.2.2.tar.gz,下载地址:http://apr.apache.org/download.cgi
pcre-8.42.tar.gz下载地址:https://sourceforge.net/projects/pcre/files/pcre/
(3)解压 安装apr
#解压
tar -zxvf apr-1.6.5.tar.gz -C /home/cluster/apr
#配置 注意 --prefix指定安装路径,apr-1.6.5是源文件目录,可以指定其他目录为安装目录
cd /home/cluster/apr/apr-1.6.5
./configure --prefix=/home/cluster/apr/apr-1.6.5
#编译安装
make && make install
(4)解压 安装apr-iconv
#解压
tar -zxvf apr-iconv-1.2.2.tar.gz -C /home/cluster/apr
#配置
cd /home/cluster/apr/apr-iconv-1.2.2
./configure --prefix=/home/cluster/apr/apr-iconv-1.2.2 --with-apr=/home/cluster/apr/apr-1.6.5
#编译安装
make && make install
(5)解压 安装apr-util
#解压
tar -zxvf apr-util-1.6.1.tar.gz -C /home/cluster/apr
#配置
cd /home/cluster/apr/apr-util-1.6.1
./configure --prefix=/home/cluster/apr/apr-util-1.6.1 --with-apr=/home/cluster/apr/apr-1.6.5 --with-apr-iconv=/home/cluster/apr/apr-iconv-1.2.2/bin/apriconv
#编译安装
make && make install
编译apr-util-1.6.1 报错
xml/apr_xml.c:35:19: fatal error: expat.h: No such file or directory
原因:缺少expat库
解决方法:
在线安装:yum install expat-deve -y
或者寻找系统镜像ISO中找ls -l|grep expat-devel
expat-devel-2.1.0-8.el7.x86_64.rpm
root用户安装:rpm -ivh expat-devel-2.1.0-8.el7.x86_64.rpm
(6)解压 安装pcre
#解压
tar -zxvf pcre-8.42.tar.gz -C /home/cluster
#配置
cd /home/cluster/pcre-8.42
./configure --prefix=/home/cluster/pcre-8.42
#编译安装
make && make install
配置报错 :Invalid c++ compiler
原因:需要安装gcc-c++
(7)解压 安装apache
#解压
tar -zxvf httpd-2.4.35.tar.gz -C /home/cluster
#创建安装目录
mkdir -p /home/cluster/apache
#配置
cd /home/cluster/httpd-2.4.35
./configure --prefix=/home/cluster/apache --with-apr=/home/cluster/apr/apr-1.6.5 --with-apr-util=/home/cluster/apr/apr-util-1.6.1 --with-pcre=/home/cluster/pcre-8.42
#编译 安装
make && make install
(8)修改配置httpd.conf
[cluster@PCS102 conf]$ vim /home/cluster/apache/conf/httpd.conf
添加一行配置:ServerName localhost:80
(9)apache 启停
(9.1)版本验证:
[cluster@PCS102 bin] /home/cluster/apache/bin/apachectl -v
Server version: Apache/2.4.35 (Unix)
Server built: Oct 12 2018 15:04:40
(9.2)
#启动
/home/cluster/apache/bin/apachectl start
#停止
/home/cluster/apache/bin/apachectl stop
#重启
/home/cluster/apache/bin/apachectl restart
#要在重启 Apache 服务器时不中断当前的连接,则应运行
/home/cluster/apache/bin/apachectl graceful
(9.3)将apache作为服务启停
第一步
[root@PCS102 init.d]# cp /home/cluster/apache/bin/apachectl /etc/init.d/httpd
第二步
vi /etc/init.d/httpd
第二行开始加入:
# Startup script for the Apache Web Server
# chkconfig: 35 61 61
# description: Apache is a World Wide Web server.
备注;第一行的3个参数意义分别为:在哪些运行级别启动httpd(3,5);启动序号(S61);关闭序号(K61)。
注意:第二行的描述必须要写!
第三步
chmod 755 /etc/init.d/httpd
chkconfig --add httpd
chkconfig httpd on
然后就可以使用服务启停apache
service httpd start 启动
service httpd restart 重新启动
service httpd stop 停止服务
(10)启动验证
(10.1)ps -ef |grep httpd #查看apache进程
daemon 25554 27645 0 16:47 ? 00:00:00 /home/cluster/apache/bin/httpd -k start
daemon 25555 27645 0 16:47 ? 00:00:00 /home/cluster/apache/bin/httpd -k start
daemon 25556 27645 0 16:47 ? 00:00:00 /home/cluster/apache/bin/httpd -k start
root 27645 1 0 15:27 ? 00:00:00 /home/cluster/apache/bin/httpd -k start
(10.2)netstat -tulnp |grep 80 #查看apache是否监听80端口
tcp6 0 0 :::80 :::* LISTEN 25554/httpd
(10.3)curl localhost #访问apache
<html><body><h1>It works!</h1></body></html>
(10.4)浏览器输入 http://134.32.123.102 回车
启动报错:
1、AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 134.32.123.102. Set the 'ServerName' directive globally to suppress this message
(13)Permission denied: AH00072: make_sock: could not bind to address [::]:80
(13)Permission denied: AH00072: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
AH00015: Unable to open logs
默认1024以下端口只有root用户可以使用,http默认端口80,可以使用root用户来启动 或者换一个端口
2、AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using 134.32.123.102. Set the 'ServerName' directive globally to suppress this message
无法可靠地确定服务器的完全限定域名
修改httpd.conf 修改配置:ServerName localhost:80
3、访问403 Forbidden You don't have permission to access / on this server.
访问路径权限问题:比如网站主目录:DocumentRoot "/home/cluster/apache/htdocs"
那么每一层文件夹都是可读的 配置权限chmod 755
参考:
https://blog.csdn.net/u011277123/article/details/77847360
http://blog.sina.com.cn/s/blog_505bf9af01012lpm.html
https://www.linuxidc.com/Linux/2017-04/142589.htm
https://www.linuxidc.com/Linux/2015-08/121073.htm
持续集成之二:搭建SVN服务器--Apache HTTP Server安装的更多相关文章
- 持续集成之二:搭建SVN服务器(subversion)
安装环境 Red Hat Enterprise Linux Server release 7.3 (Maipo) jdk1.7.0_80 subversion-1.10.3.tar.gz apr-1. ...
- [记录]CentOS搭建SVN服务器(主从同步)
CentOS搭建SVN服务器(主从同步)1.安装步骤如下: 1)安装: #yum install subversion 2)查看安装位置: #rpm -ql subversion 3)查看版本: #/ ...
- 【SVN】CentOS7.0下搭建SVN服务器
SVN服务器搭建 最近接手了天赋吉运的SVN项目管理,那么学会搭建SVN服务器就成为了必须的技能.这篇文章就来讲一讲在CentOS7.0下如何搭建SVN服务器 1,下载安装SVN版本 yum inst ...
- CentOS搭建SVN服务器,并通过Apache HTTP方式访问
摘要:本文主要讲述了在centos 6.5环境下搭建svn服务器,可通过svn:\\IP方式访问.同时由于部分公司内网端口限制,并不能访问外网的svn服务器,所以特地结合了apache服务器,使得可以 ...
- Dubbo入门到精通学习笔记(三):持续集成管理平台之SVN版本管理系统的安装和使用
文章目录 持续集成管理平台介绍 持续集成介绍 持续集成管理平台的组成 持续集成实践介绍 即将学习 SVN版本管理系统的安装 安装 Subversion + Apache 安装 jsvnadmin 简单 ...
- 【iOS】Jenkins Gitlab持续集成打包平台搭建
Jenkins Gitlab持续集成打包平台搭建 SkySeraph July. 18th 2016 Email:skyseraph00@163.com 更多精彩请直接访问SkySeraph个人站点: ...
- 如何在win上搭建SVN服务器
本博文转自:http://www.cnblogs.com/armyfai/p/3985660.html SVN简介: 为什么要使用SVN? 程序员在编写程序的过程中,每个程序员都会生成很多不同的版本, ...
- Windows和Linux环境下搭建SVN服务器
--------------------------Windows下搭建SVN服务器----------------------------- 一.安装SVN服务端 软件包Setup-Subversi ...
- SVN学习---使用 Visual SVN 搭建SVN服务器
1.1. 使用 Visual SVN 搭建SVN服务器 搭建纯粹SVN服务器 --- svn:// 访问资源 将SVN 和 Apache服务器整合 ,搭建web SVN服务器 ---- https: ...
随机推荐
- IOS控制系统手势返回
self.navigationController.interactivePopGestureRecognizer.enabled = YES; //手势返回的代理,如果自定义了leftButtonI ...
- iOS property中的strong 、weak、copy 、assign 、retain 、unsafe_unretained 与autoreleasing区别和作用详解
iOS5中加入了新知识,就是ARC,其实我并不是很喜欢它,因为习惯了自己管理内存.但是学习还是很有必要的. 在iOS开发过程中,属性的定义往往与retain, assign, copy有关,我想大家都 ...
- Shell case
case 值 in模式1) command1 command2 command3 ;;模式2) command1 command2 command3 ;;*) command1 command2 co ...
- Windows 平台下安装Cygwin后,sshd服务无法启动
Windows 平台下安装Cygwin后,sshd服务无法启动 系统日志记录信息: 事件 ID ( 0 )的描述(在资源( sshd )中)无法找到.本地计算机可能没有必要的注册信息或消息 DLL 文 ...
- MPD大会北京上海两站圆满落幕
MPD大会北京上海两站圆满落幕 由麦思博(MSUP)主办的亚太软件研发团队管理峰会(以下简称MPD大会)分别于6月15及6月22日在北京.上海成功举办.国内外知名软件.互联网行业项目领头人及业内从业人 ...
- JavaScript简介与使用方法
1.JavaScript简介 1.1.JavaScript简史 最初:网络通信很慢,网页上的数据要传送到数据库验证,然后再返回错误结果,找客观过程要等很久,于是,网景公司开发出一门新语言,当时Java ...
- Oracle管理监控之检查数据库和日常维护数据库
linux系统的系统日志一般位于/var/log目录下.linux的系统日志由一个叫syslog的进程管理的,如下日志都是由syslog服务驱动的. /var/log/ messages:记录linu ...
- CF1053E Euler tour 构造
正解:构造 解题报告: 传送门! 这种题目一般都是首先考虑合法性 这题也不例外,思考怎么样是合法的呢? 有四点: 1)a[1]=a[2n-1],显然不说 2)若a[i]=a[j],则(j-i)& ...
- EControl平台测试向生产版本工程切换说明
第一步,备份生产环境版本,假设生产环境版本工程名为SEHEControl,记录版本说明第二部,拷贝测试版本到新文件夹,假设测试版本工程名为SEHEControlTest第三步,进入工程文件夹,修改SL ...
- javaScript高级教程(八)-----正则表达式温故知新
1.RegExp对象:五个属性二个方法 五个属性:global, ignoreCase,multiline,lastIndex,source 二个方法: exec()--模式匹配 test()--检测 ...