CentOS7.3上如何安装Apache/2.4.34
1)卸载系统自带的httpd
Centos可能自带了httpd,但是版本可能会较低,执行下面的命令检测是否已经安装了httpd
rpm -qa | grep httpd
如果检测已经安装了二进制的httpd,则使用下面的命令卸载,防止现在的二进制httpd对你之后安装的源码httpd干扰
可能已经安装,但是版本相当于官网较低,为防止干扰,所以先卸载自带httpd
yum -y remove httpd
2) 下载httpd源码包
wget http://mirrors.tuna.tsinghua.edu.cn/apache//httpd/httpd-2.4.35.tar.gz
此处还下载两个httpd在生产环境下两个很重要的包,apr和apr-util(具体想了解这两个包,可以度娘一下)
wget http://mirrors.hust.edu.cn/apache//apr/apr-1.6.5.tar.gz
wget http://mirrors.hust.edu.cn/apache//apr/apr-util-1.6.1.tar.gz
3)解压apr以及apr-util源码包
tar xf apr-1.6.3.tar.gz -C /usr/local/src
tar xf apr-util-1.6.1.tar.gz -C /usr/local/src
tar xf httpd-2.4.34.tar.gz -C /usr/local/src
下载的源码包最好都放在/usr/local/src下,当然如果你不放在这里也不影响功能的使用
安装apr
cd /usr/local/src/apr-1.6.3
./configure --prefix=/usr/local/apr
--prefix是指定安装目录
如果是第一次安装源码包,可能会出现以下问题

这个错误是因为你缺少解码编译器,进行如下操作即可
yum -y install gcc gcc-c++ make
安装完成后,再次进行安装apr
./configure --prefix=/usr/local/apr
make && make install
&&的意思是前一条命令执行成功才会执行下一条命令
安装apr-util
cd ../apr-util-1.6.1/
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make
可能会出现如下报错

缺少依赖关系,安装expat-devel:
yum -y install expat-devel
然后
make && make install
安装httpd
cd ../httpd-2.4.34
./configure \
--prefix=/usr/local/apache \
--enable-so \
--enable-ssl \
--enable-rewrite \
--enable-cgi \
--enable-cgid \
--enable-modules=most \
--enable-mods-shared=most \
--with-apr=/usr/local/apr \
--with-apr-util=/usr/local/apr-util
这是我选择了一些配置的功能,你可以根据自己的需要改变,如果只是简单的安装httpd,直接./configure --prefix=/usr/local/apache
可能会出现如下的报错

yum -y install pcre-devel

yum -y install mod_ssl openssl-devel
重新httpd的安装./configure,然后
make
此时可能出现如下问题

yum -y install libtool-ltdl-devel
然后重新编译一下apr-util 然后重新安装http,步骤和之前安装apr-util步骤一致,然后在回到httpd的目录中进行如下操作即可安装完成
make && make install
安装完成后,可通过如下如下命令查询你http的版本
/usr/local/apache/bin/apachectl -v
Server version: Apache/2.4.34 (Unix)
Server built: Aug 10 2018 21:47:10
注:
在安装httpd时如果不确定哪一步是否正确执行,可以使用echo $?判断命令是否执行成功
为了方便以后使用apache可以将执行路径添加的PATH中,这样下次执行命令时,就不需要使用路径
echo PATH=$PATH:/usr/local/apache/bin/apachectl >> /etc/profile
source /etc/profile //加载配置文件
apachectl start //启动apache
ss -antp | grep :80 //判断apache是否启动成功
如果在启动服务时发生如下错误

需要修改httpd的配置文件 /usr/local/apache/conf/httpd.conf
将ServerName www.example.com:80这一行的注释去掉,修改完成之后重启apache服务
/usr/local/apache/bin/apachectl restart //未添加PATH
apachectl restart //添加了PATH路径
CentOS7.3上如何安装Apache/2.4.34的更多相关文章
- Kubernetes+Docker的云平台在CentOS7系统上的安装
Kubernetes+Docker的云平台在CentOS7系统上的安装 1.运行VirtualBox5. 2.安装CentOS7系统. 注意:选择Basic Server类型 安装过程略. 3.修改计 ...
- 转载:centos上yum安装apache+php+mysql等
1. 更新系统内核到最新. [root@linuxfei ~]#yum -y update 系统更新后,如果yum安装时提示错误信息,请执行以下命令修复. [root@linuxfei ~]#rpm ...
- 尝试在CentOS7.2上编译安装Swift
苹果提供 Ubuntu上构建Swift 的教程,通过这个教程我尝试使用CentOS7.2上玩儿一把.目前已经成功在CentOS7.2上班成功安装 swift 4.0 https://github.co ...
- 最小化安装的centos7.5上编译安装git2.19
VMware Workstation已经采用最小化安装CentOS7,显示版本为CentOS7.5,准备采用yum安装git. 采用yum list git发现可安装的GIT软件包版本1.8.3.1, ...
- MySQL-5.7.19 在阿里云 CentOS-7.0 上的安装
工具准备 查看系统是否安装了yum工具: [root@wangbo srv]# rpm -qa | grep yum yum-metadata-parser-1.1.4-10.el7.x86_64 y ...
- centos7.3上编译安装percona5.7.18
一,删除操作系统自带mariadb yum remove mariadb 二,下载需要的安装包 percona-toolkit-3.0.3-1.el7.x86_64.rpm boost_1_59_0. ...
- CentOS7 服务器上如何安装python3
1.官网下载python3的源码包 网址:https://www.python.org/ 进去之后点击导航栏的Downloads,也可以鼠标放到Downloads上弹出菜单选择Source code, ...
- Linux CentOS7.5上二进制安装MySQL5.7.23
1.下载二进制文件 cd /usr/local/src/ wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.23-linux-glib ...
- centos7.2安装apache比较简单,直接上代码
centos7.2安装apache比较简单,直接上代码 1.安装 yum install httpd 2.启动apache systemctl start httpd.service 3. ...
随机推荐
- map里面的set方法
let a=[1,2,3,4,1,2,3,4,1,4];let b= new Set(a);console.log(b) 还有add方法介绍下: let a=new Set();let b=[1,1, ...
- mysql数据库数据的 备份以及还原
数据库备份的3种方式: 例如:mysqldump -uzx_root -p test>/root/test1.sql
- fastdfs-nginx-module-master的一些奇怪的特点
测试环境和生产环境分别是两套fastdfs,但是网络没有隔离,今天发现一个奇怪的现象就是测试环境的文件,通过生产环境的入口,居然也可以访问到,我草了,奇怪了 研究发现功劳是fastdfs-nginx- ...
- Linux学习8-CentOS部署自己本地的django项目
前言 自己本地写好的django项目,如何部署到linux服务器上,让其他的小伙伴也能访问呢?本篇以centos系统为例,把本地写好的django项目部署到linux服务器上 环境准备: 环境准备: ...
- caffe中的卷积
https://www.zhihu.com/question/28385679 如上,将三维的操作转换到二维上面去做,然后调用GEMM库进行矩阵间的运算得到最后结果. 两个矩阵相乘,需要中间的那个维度 ...
- Spring MVC原理及配置详解
Spring MVC概述: Spring MVC是Spring提供的一个强大而灵活的web框架.借助于注解,Spring MVC提供了几乎是POJO的开发模式,使得控制器的开发和测试更加简单.这些控制 ...
- 15.3-uC/OS-III资源管理(多值信号量)
多值信号量是 uC/OS 操作系统的一个内核对象, 主要用于标志事件的发生和共享资源管理. 1.如果想要使用多值信号量,就必须事先使能多值信号量. 多值信号量的使能位于“os_cfg.h”. 2.OS ...
- javascript常用的操作
1.concat() 连接两个或更多的数组,并返回一个新的数组.注意:该方法不会改变原数组 var arry1=["李四",“王二”]: var arry2=['赵柳',“李旺 ...
- k-means性能测试
clf = MiniBatchKMeans(n_clusters=5000, batch_size=5000, n_init=1, max_iter=200, max_no_improvement=1 ...
- 2018-2019-1 20189203《linux内核原理与分析》第六周作业
第一部分 给Menu OS增加命令 输入命令 rm -rf menu git clone http://github.com/mengning/menu.git make rootfs 查看增加的ti ...