CentOS 7.6 源码安装并启动Apache服务

源码安装并启动Apache服务

    • 实验准备
    • 实验思路
    • 实验步骤
      • 挂载光盘
      • 安装gcc,gcc-c++,make
      • 源码安装httpd
      • 配置httpd
      • 启动httpd
    • 验证访问网页

实验准备

  • CentOS 7.6系统安装光盘
  • Httpd安装压缩包httpd-2.4.25.tar.gz

实验思路

  • 挂载系统镜像光盘
  • 安装gcc、gcc-c++和make
  • 源码安装httpd服务并进行简单配置
  • 启动apache服务,验证可以访问网页

实验步骤

挂载光盘

首先要挂载系统的安装镜像盘,用于yum安装软件程序,如gcc,gcc-c++和make

CentOS 7.6 源码安装并启动Apache服务_第1张图片
连接光盘
连接到虚拟机之后就可以用mount挂载了,挂载完成之后查看一下是否挂载成功
mount /dev/cdrom /mnt #mount 源目录 目标目录
df -Th #查看文件系统,并显示类型
CentOS 7.6 源码安装并启动Apache服务_第2张图片
挂载完成之后在挂载目录下面就会出现一个“Packages”的目录,里面是各种rpm软件包
在这里插入图片描述

因为一个软件需要在linux上运行必须是二进制文件,所以如果是源码安装的话需要把它编译成二进制文件才能在linux上运行,需要2个步骤

  1. 使用gcc编译器将源码编译成目标文件
  2. 再使用gcc编译器将目标文件链接成二进制文件

安装gcc,gcc-c++,make

make命令:用它通过命令行来编译和安装很多开源的工具

当 make 命令第一次执行时,它扫描 Makefile 找到目标以及其依赖。如果这些依赖自身也是目标,继续为这些依赖扫描 Makefile 建立其依赖关系,然后编译它们
在这里插入图片描述
报错Errno 256:No more mirrors to try
CentOS 7.6 源码安装并启动Apache服务_第3张图片
发现虚拟机是仅主机模式,有可能无法联网,所以无法下载需要的软件包,这时我们需要设置yum本地源:把yum仓库的地址指定到本地地址,到yum配置目录下,将原来的文件全部备份一下
CentOS 7.6 源码安装并启动Apache服务_第4张图片
然后修改CentOS-Base.repo这个基础配置文件
在这里插入图片描述
把1-36行内容删除,多行删除(vi),:1,36d
CentOS 7.6 源码安装并启动Apache服务_第5张图片
做如下设置:
[centos]
name=CentOS #随便取一个好识别的名字
baseurl=file:///mnt #因为光盘挂载到/mnt下所以这里指定这个地址
gpgcheck=0 #从这个源下载的rpm包不进行校验
enabled=1 #表示启用这个源
CentOS 7.6 源码安装并启动Apache服务_第6张图片
yum clean all #清除yum缓存
yum makecache #建立yum缓存(必须,否则会报错)
CentOS 7.6 源码安装并启动Apache服务_第7张图片
然后用yum重新安装gcc、gcc-c++、make,显示都已安装
CentOS 7.6 源码安装并启动Apache服务_第8张图片

源码安装httpd

接着就可以源码安装httpd了
首先需要用Xftp(随便一个ftp工具)把httpd传到linux里,放到/opt下
CentOS 7.6 源码安装并启动Apache服务_第9张图片
然后解压到/opt下(一定要先拷贝再在linux里解压否则会报错权限错误)
在这里插入图片描述
进入解压完成后的目录,进行源码安装
./configure --prefix=/usr/local/apache
–prefix指的是配置安装目录,把安装的所有文件都指定安装在/usr/local/apache目录下,比较好维护,也便于卸载与移动

如果不指定prefix,则可执行文件默认放在/usr /local/bin,库文件默认放在/usr/local/lib,配置文件默认放在/usr/local/etc。其它的资源文件放在/usr /local/share

如果将来要删除这个程序,指定了prefix,就删掉这个目录就可以了
CentOS 7.6 源码安装并启动Apache服务_第10张图片
CentOS 7.6 源码安装并启动Apache服务_第11张图片
CentOS 7.6 源码安装并启动Apache服务_第12张图片
这里一直报错APR-util not found,所以从APR网站(http://apr.apache.org )上下载这两个tar包上传至/usr/local(APR和APR-util都要下载)
CentOS 7.6 源码安装并启动Apache服务_第13张图片
指定安装目录分别为/usr/local/apr 与/usr/local/apr-util
CentOS 7.6 源码安装并启动Apache服务_第14张图片
然后./configure的时候一定要加上–with-apr=/usr/local/apr 和–with-apr-util=/usr/local/apr-util
–with指的是安装本文件所依赖的库文件
在这里插入图片描述
这里还报错pcre-config not found,这时用yum重新装一下即可
在这里插入图片描述
没有报错之后就可以进行编译安装了,在httpd解压目录下make,没有报错继续make install
在这里插入图片描述
在这里插入图片描述

配置httpd

安装好以后对它进行配置,apache默认配置文件为httpd.conf
在这里插入图片描述
找到SeverName这一行,去掉前面的#号,开启80端口
CentOS 7.6 源码安装并启动Apache服务_第15张图片

启动httpd

最后启动apache服务
在这里插入图片描述
绝对路径下的启动方式如图:
在这里插入图片描述
查看80端口确定在监听状态
netstat命令:一般用来查看端口状态的

  • -t 显示TCP协议的进程
  • -p 显示进程名称
  • -a 显示所有
  • -n 使用IP地址显示

在这里插入图片描述

验证访问网页

安装lynx浏览器软件
lynx命令是纯文本模式的网页浏览器,不支持图形、音频、视频等多媒体信息
在这里插入图片描述
输入以下命令用文本浏览器打开测试网页
在这里插入图片描述
若显示“It works”则表示apache部署成功
CentOS 7.6 源码安装并启动Apache服务_第16张图片
这时我们需要在本机也能访问这个网址:

  1. 虚拟机网络模式改为NAT(做端口映射)
  2. 关闭linux防火墙

虚拟机改NAT如下图:
CentOS 7.6 源码安装并启动Apache服务_第17张图片
CentOS 7.6 源码安装并启动Apache服务_第18张图片
CentOS 7.6 源码安装并启动Apache服务_第19张图片
查看防火墙状态(一般默认开启)
firewwall-cmd --state
在这里插入图片描述
关闭防火墙:
systemctl stop firewalld.service
在这里插入图片描述
浏览器输入虚拟机ip即可访问,如图:
CentOS 7.6 源码安装并启动Apache服务_第20张图片

你可能感兴趣的:(Linux)