•  

【CentOS 7】Apache安装笔记

发表于 2019-02-28,阅读 56

基本信息

安装环境

CentOS:CentOS Linux release 7.6.1810 (Core)
Linux:Linux version 3.10.0-1062.el7.x86_64
GCC:gcc version 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC)

软件版本

apr-1.6.5.tar.gz
apr-util-1.6.1.tar.gz
httpd-2.4.38.tar.gz

验证时间

2020/01/07

准备工作

本地化

如果是新环境,我们需要设置时区以保证时间显示正确

timedatectl set-timezone Asia/Shanghai

安装wget

如果环境里没有wget,通过yum安装一下

yum -y install wget

安装gcc

如果环境里没有编译工具,通过yum安装一下

yum -y install gcc gcc-c++ make

安装依赖包

yum -y install expat-devel pcre-devel openssl-devel perl libxml* curl-devel freetype-devel autoconf

建立环境根目录

mkdir -p /tongfu.net/env/

建立安装包目录并进入

mkdir /packages
cd /packages

安装Apache 2.4

准备

apr-1.6.5.tar.gz
apr-util-1.6.1.tar.gz
httpd-2.4.38.tar.gz

下载安装包

wget http://mirror.bit.edu.cn/apache/apr/apr-1.6.5.tar.gz
wget http://mirror.bit.edu.cn/apache/apr/apr-util-1.6.1.tar.gz
wget http://mirror.bit.edu.cn/apache/httpd/httpd-2.4.38.tar.gz

安装apr

tar xzvf apr-1.6.5.tar.gz
cd apr-1.6.5
./configure --prefix=/tongfu.net/env/apr-1.6.5
make && make install
cd ..

安装apr-util

tar xzvf apr-util-1.6.1.tar.gz
cd apr-util-1.6.1
./configure --prefix=/tongfu.net/env/apr-util-1.6.1 \
--with-apr=/tongfu.net/env/apr-1.6.5/bin/apr-1-config 
make && make install
cd ..

安装httpd

tar xzvf httpd-2.4.38.tar.gz
cd httpd-2.4.38
./configure --prefix=/tongfu.net/env/httpd-2.4.38 \
--with-apr=/tongfu.net/env/apr-1.6.5 \
--with-apr-util=/tongfu.net/env/apr-util-1.6.1 \
--with-pcre \
--enable-so \
--enable-rewrite \
--enable-ssl
make && make install
cd ..

初始化

打开 httpd.conf 配置文件

将 ServerAdmin 设置为 webmaster@tongfu.net

将 ServerName 设置为 localhost

将 Listen 设置为 8080

[root@tongfunet]# vi /tongfu.net/env/httpd-2.4.38/conf/httpd.conf

ServerAdmin webmaster@localhost

ServerName localhost

Listen 8080

注意:为什么我们要把Apache的端口设置为 8080 呢?因为一般情况下Apache都是工作在Nginx后面的

启动

/tongfu.net/env/httpd-2.4.38/bin/apachectl start

测试

[root@tongfunet]# curl 'http://localhost:8080/'
<html><body><h1>It works!</h1></body></html>

自动启动

添加系统服务脚本

[root@tongfunet]# cat > /lib/systemd/system/httpd.service <<EOF
[Unit]
Description=httpd
After=network.target

[Service]
Type=forking
ExecStart=/tongfu.net/env/httpd-2.4.38/bin/apachectl start
ExecReload=/tongfu.net/env/httpd-2.4.38/bin/apachectl restart
ExecStop=/tongfu.net/env/httpd-2.4.38/bin/apachectl stop
PrivateTmp=true

[Install]
WantedBy=multi-user.target
EOF

使用 systemctl 管理 httpd 服务

systemctl enable httpd # 设置自动启动

systemctl start httpd # 启动服务

systemctl stop httpd # 停止服务

systemctl restart httpd # 重启服务



鬼谷子叔叔
  • 日志:127
  • 回复:13

进入ta的主页