驰网飞飞 发表于 昨天 16:34

CentOS 7 安装配置Apache服务器详细图文教程

国外官方 Apache 相关组件官方下载列表:Apache Distribution Directory
国内阿里云官方Apache相关组件官方下载列表(下载速度更快):apache安装包下载_开源镜像

一、安装依赖
yum install -y pcre-devel libxml2 expat-devel zlib-devel gcc*
二、安装APR
APR(Apache portable Run-time libraries,Apache 可移植运行库)的目的如其名称一样,主要为上层的应用程序提供一个可以跨越多操作系统平台使用的底层支持接口库。在早期的 Apache 版本中,应用程序本身必须能够处理各种具体操作系统平台的细节,并针对不同的平台调用不同的处理函数。

1、下载APR安装包
①离线下载Apr安装包
打开Apache Distribution Directory,下载需要安装的ARP版本(tar.bz2和tar.gz类型的都可以,只下载一个就行)下载到本地文件夹





再把下载好的包上传到服务器即可,可用rz命令(建议上传前在某个路径下创建个文件夹存放文件)
cd /usr
mkdir apr
cd /usr/apr
rz
若是出现-bash: rz: command not found说明系统没有安装lrzsz,输入以下命令安装
yum -y install lrzsz安装后运行rz命令会弹出选择本地文件的对话框,选择文件等待上传完成即可。

注意:操作了①就不要操作②了

②在线下载ARP
在https://downloads.apache.org/查看好版本号,直接输入以下命令进行下载
wget --no-check-certificate ]https://downloads.apache.org/apr/apr-1.7.4.tar.gz
2、解压安装
#cd /usr/apr切换到文件存放目录
#tar zxvf apr-1.7.4.tar.gz解压文件
#sed -i '31279s/$RM/$RM -f/' apr-1.7.4/configure   在configure文本中插入新的一行
#grep --color=auto "RM='\$RM -f" apr-1.7.4/configure标记匹配颜色“--color=auto”选项并在configure文本中查找内容
#cd apr-1.7.4   切换目录
#./configure --prefix=/usr/apr && make && make install指定路径安装
三、安装Apr-util
apr-util 该目录中也是包含了一些常用的开发组件。这些组件与 apr 目录下的相比,它们与apache的关系更加密切一些。比如存储段和存储段组,加密等等。
Apr-util 下载地址:Index of /apr (apache.org)



同下载安装ARP一样方法,新建一个存放目录,在目录中使用rz命令上传文件,或是直接使用wget命令在线下载
cd /usr
mkdir apr-util
cd /usr/apr-util
rz或直接输入在线下载命令
wget --no-check-certificate https://downloads.apache.org/apr/apr-util-1.6.3.tar.gz
下载好后解压安装
tar zxvf apr-util-1.6.3.tar.gz
切换工作目录
cd apr-util-1.6.3
指定路径安装
./configure --prefix=/usr/apr-util --with-apr=/usr/apr
make
make install



四、Apr-iconv安装
apr-iconv 包中的文件主要用于实现 iconv 编码。目前的大部分编码转换过程都是与本地编码相关的。在进行转换之前必须能够正确地设置本地编码。因此假如两个非本地编码 A 和 B 需要转换,则转换过程大致为 A->Local 以及 Local->B 或者 B->Local 以及 Local->A。

apr-iconv 下载地址:Index of /apr (apache.org)



新建存放目录
mkdir apr-iconv下载apr-iconv
wget --no-check-certificate https://downloads.apache.org/apr/apr-iconv-1.2.2.tar.gz
解压
tar zxvf apr-iconv-1.2.2.tar.gz
切换工作路径
cd apr-iconv-1.2.2
指定安装路径
./configure --prefix=/usr/apr-iconv --with-apr=/usr/apr
make
make install


五、Apache安装
yum安装
yum -y install httpd
安装好后查看版本号
rpm -q httpd查看apache工作状态及启动
systemctl status httpd   //查看apache状态当返回结果出现Active: inactive (dead)说明现在是未激活状态

尝试启动它
systemctl start httpd      //启动Apache
Apache 下载地址:Index of /httpd (apache.org)

新建存放目录,然后输入在线下载命令
wget --no-check-certificate https://downloads.apache.org/httpd/httpd-2.4.58.tar.gz解压
tar zxvf httpd-2.4.58.tar.gz切换工作目录
cd httpd-2.4.58安装配置
./configure --prefix=/usr/apache --enable-mpms-shared=all --with-mpm=event --with-apr=/usr/apr --with-apr-util=/usr/apr-util --enable-so --enable-remoteip --enable-proxy --enable-proxy-fcgi --enable-proxy-uwsgi --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --enable-cache --enable-file-cache --enable-mem-cache --enable-disk-cache --enable-static-support --enable-static-ab --disable-userdir --enable-nonportable-atomics --disable-ipv6 --with-sendfile

make
make install
配置可参考下方注释
--prefix=/usr/apache   指定安装目录
--enable-mpms-shared=all --with-mpm=event    开启动态MPM切换      
--with-apr=/usr/apr --with-apr-util=/usr/apr-util指定依赖包apr apr-util安装路径
--enable-so      打开 so 模块,so 模块是用来提 dso 支持的 apache 核心模块
--enable-remoteip   支持基于客户端IP做访问控制                        
--enable-proxy --enable-proxy-fcgi --enable-proxy-uwsgi    启用代理支持PHP Python网站
--enable-deflate=shared                         开启压缩
--enable-expires=shared                         开启客户端缓存
--enable-rewrite=shared                         开启URL重写
--enable-cache --enable-file-cache --enable-mem-cache --enable-disk-cache 开启服务器缓存   
--enable-static-support                        支持静态连接
--enable-static-ab          使用静态连接编译 ab - apache http 服务器性能测试工具
--disable-userdir            禁用用户主目录提供页面访问
--enable-nonportable-atomics   对新式CPU支持,支持原子的比较交换(compare-and -swap, CAS)操作指令
--disable-ipv6               禁用IPV6
--with-sendfile            开启sendfile 0复制机制

若是在安装配置中出现404 Not Found错误,可能是因为版本号不对,去官方查看下版本号是否正确。



apache安装完成。

六、启动和测试apache
在启动apache前,需要设置以下几处配置:
使用getenforce命令可以显示当前SELinux的应用模式,是强制、允许还是停用。
getenforce 其中,Permissive是允许,Enforcing是强制,Disabled表示已关闭

查看防火墙状态
systemctl status firewalld返回结果显示Active:active(running)表示防火墙开启
Active:inactive(dead)表示防火墙已关闭

若是防火墙开启状态,依次使用以下命令永久关闭防火墙
systemctl disable firewalld
systemctl stop firewalld
systemctl status firewalldsetenforce 0若是提示SELinux is disabled说明SELinux 已经关闭

也可永久关闭 selinux:
vim /etc/selinux/config重启生效!

可以通过执行 apachectl 或者 httpd 启动 apache,需要在根目录启动,运行以下命令启动
/usr/apache/bin/httpd或是
cd /usr/apache/bin
./apachectl -t
可以通过以下命令查看httpd端口和服务是否在运行
netstat -ntpl


文本测试
安装依赖
yum -y install elinks
elinks命令可以实现一个纯文本界面的www浏览器
elinks http://36.137.68.81 -dump
-dump 将HTML文档以纯文本的方式打印到标准输出设备

感谢您的阅读,服务器大本营-技术文章内容集合站,助您成为更专业的服务器管理员!
页: [1]
查看完整版本: CentOS 7 安装配置Apache服务器详细图文教程

点击直接加入[服务器大本营QQ频道]