持续集成之二:搭建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: ...
随机推荐
- linux系统下网络主-备份策略之网卡bond技术
操作系统:CentOS Linux release 7.1.1503 (Core) 网卡适配器: eno1.eno2 bonding类型:mode=1 (active-backup),主-备份策略 网 ...
- python requests模块中返回时间elapsed解析
一.问题: Python 中requests库在发送http请求时相当方便好用,但在使用时一直受一个问题困扰,怎么才能查看请求时长呢? 自己写时间函数再相减?NO,这个方法肯定不行. 二.解决: 好吧 ...
- Unity3D笔记 愤怒的小鸟<四> 实现Selelction界面
一直跟着龚老师用js写,VS智能感应用习惯后发现这里用js对初学者比较蛋疼,MONO有提示但是还是无法和VS媲美就目前来看.所以这次还是换成熟悉的VS来开发. 目标:实现关卡页面 跑起来的效果如下: ...
- 【转】bit、byte、位、字节、汉字的关系
UTF-8和UTF-16的区别?Unicode和UTF是什么关系?Unicode转义字符(\u+4个十六进制).遇到多个引号的时候转义? 解释: unicode是一种编码方式,和ascii是同一个概念 ...
- Thinkphp框架下PHPExcel实现Excel数据的批量化导入导出
第一步:下载官方的PHPExcel文件,下载地址https://github.com/PHPOffice/PHPExcel 第二步:解压打开,将PHPExcel\Classes\全部文件拷贝到thin ...
- 什么是webpack?
https://www.webpackjs.com/concepts/ https://webpack.github.io/ 本质上,webpack 是一个现代 JavaScript 应用程序的静态模 ...
- 对crf++的template的理解 ©seven_clear
这是以前的一篇草稿,当初没写完,今天发出来,但总觉得水平有限,越学越觉得自己菜,写的博客水准低,发完这篇以后就谨慎发博了,毕竟自己菜,不能老吹B,下面是原稿. 好久没更了,本来年前想写篇关于爬虫的总结 ...
- CCCC训练赛一些模板 struct sstream
重载与构造 struct node { friend bool operator< (node n1, node n2) { return n1.priority > n2.priorit ...
- zabbix 报警的返回值
常用: {DATE} {ESC.HISTORY} {EVENT.AGE} {EVENT.DATE} {EVENT.ID} {EVENT.TIME} {HOSTNAME} {IPADDRESS} {IT ...
- https-->http and http-->https bitransfer
openssl s_client -connect myupload.mysite.net:443/cgi-bin/posupload.cgi -status -cert client.pem -ve ...