Linux LAMP平台概述及编译安装HTTP服务(Apache)


LAMP介绍

LAMP 架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整套系统和相关软件,能够提供动态 Web 站点服务及其应用开发环境。LAMP 是一个缩写词,具体包括 Linux 操作系统、Apache 网站服务器、MySQL 数据库服务器、PHP(或 Perl、Python)网页编程语言。本章将以源码编译的方式搭建 LAMP 环境,能够满足企业定制化的需求。

在构建 LAMP 平台时,各组件的安装顺序依次为 Linux、Apache、MySQL、PHP。其中 Apache 和 MySQL 的安装并没有严格的顺序;而 PHP 环境的安装一般放到最后,负责沟通 Web 服务器和数据库系统以协同工作。


Apache 简介

“Apache HTTP Server”是开源软件项目的杰出代表,基于标准的 HTTP 网络协议提供网页浏览服务,在 Web 服务器领域中长期保持着超过半数的份额。Apache 服务器可以运行在 Linux、UNIX、Windows 等多种操作系统平台中。

Apache 服务器是针对之前出现的若干个 Web 服务器程序进行整合、完善后形成的软件,其名称来源于“A Patchy Server”,意思是“基于原有 Web 服务程序的代码进行修改(补丁)后形成的服务器程序”。

1995 年, Apache 服务程序发布了 1.0 版本,之后一直由“Apache Group”负责该项目的管理和维护;直到 1999 年,在“Apache Group”的基础上成立了 Apache 软件基金会(Apache Software Foundation,ASF)。目前Apache 项目一直由 ASF 负责管理和维护。

ASF 是非盈利性质的组织,最初只负责“Apache Web”服务器项目的管理,随着 Web应用需求的不断扩大,ASF 逐渐增加了许多与 Web 技术相关的开源软件项目,因此 Apache现在不仅仅代表着 Web 服务器,更广泛地代表着 ASF 管理的众多开源软件项目。ASF 基金会的官方网站是 http://www.apache.org/。

“Apache HTTP Server”是 ASF 旗下著名的软件项目之一,其正式名是“httpd”,也就是历史上的Apache 网站服务器。在后续内容中,若未作特殊说明,使用“Apache”或者“httpd”,均指的是“Apache HTTP Server”。


Apache 的主要特点
1、开放源代码:这是 Apache 服务器的重要特性之一,也是其他特性的基础。Apache 服务程序由全世界的众多开发者共同维护,并且任何人都可以*使用,这充分体现了开源软件的精神。

2、跨平台应用:这个特性得益于 Apache 的源代码开放。Apache 服务器可以运行在绝大多数软硬件平台上,所有 UNIX 操作系统都可以运行 Apache 服务器,甚至 Apache 服务器可以良好地运行在大多数 Windows 系统平台中。Apache 服务器的跨平台特性使其具有被广泛应用的条件。

3、支持各种Web 编程语言:Apache服务器可支持的网页编程语言包括Perl、PHP、Python、Java 等,甚至微软的 ASP 技术也可以在 Apache 服务器中使用。支持各种常用的 Web 编程语言使 Apache 具有更广泛的应用领域。

4、模块化设计:Apache 并没有将所有的功能集中在单一的服务程序内部,而是尽可能地通过标准的模块实现专有的功能,这为 Apache 服务器带来了良好的扩展性。其他软件开发商可以编写标准的模块程序,从而添加 Apache 本身并不具有的其他功能。

5、运行非常稳定:Apache 服务器可用于构建具有大负载访问量的 Web 站点,很多知名的企业网站都使用 Apache 作为 Web 服务软件。

6、良好的安全性:Apache 服务器具有相对较好的安全性,这是开源软件共同具有的特性。并且,Apache 的维护团队会及时对已发现的漏洞提供修补程序,为 Apache 的所有使用者提供尽可能安全的服务器程序。




编译安装HTTP服务

安装Apache所需软件
将安装Apache所需的软件包通过Xmanager Enterprise 5软件传到/opt目录下。将他们解压,并将apr-1.6.2.tar.gz和apr-util-1.6.0.tar.gz放到httpd-2.4.29/srclib/下。
Linux LAMP平台概述及编译安装HTTP服务(Apache)


准备安装环境

安装依赖包及解决依赖关系
Linux LAMP平台概述及编译安装HTTP服务(Apache)
Linux LAMP平台概述及编译安装HTTP服务(Apache)


配置模块:
Linux LAMP平台概述及编译安装HTTP服务(Apache)
Linux LAMP平台概述及编译安装HTTP服务(Apache)
配置模块解释:
–prefix:指定将 httpd 服务程序安装到哪个目录下,如/usr/local/httpd
–enable-so:启用动态加载模块支持,使 httpd 具备进一步扩展功能的能力。
–enable-rewrite:启用网页地址重写功能,用于网站优化及目录迁移维护。
–enable-charset-lite:启动字符集支持,以便支持使用各种字符集编码的网
–enable-cgi:启用 CGI 脚本程序支持,便于扩展网站的应用访问能力。


编译及安装
make && make install
Linux LAMP平台概述及编译安装HTTP服务(Apache)
Linux LAMP平台概述及编译安装HTTP服务(Apache)


查看HTTP版本
Linux LAMP平台概述及编译安装HTTP服务(Apache)


添加 httpd 系统服务
Linux LAMP平台概述及编译安装HTTP服务(Apache)
Linux LAMP平台概述及编译安装HTTP服务(Apache)
添加以下内容:
(前面加#号) chkconfig: 35 85 21
(前面加#号)description: Apache is a World Wide Web server
Linux LAMP平台概述及编译安装HTTP服务(Apache)


chkconfig --add httpd (添加为系统服务)
chkconfig --list httpd (查看http服务自启状态 该输出结果只显示Sysv服务,并不包含原生 systemd 服务。SysV 配置数据可能被原生 systemd 配置覆盖)
Linux LAMP平台概述及编译安装HTTP服务(Apache)




建立[service].service 配置文件添加系统给服务
在/lib/systemd/system/目录下,建立一个以.service 结尾的单元(unit)配置文件,
用于控制由 systemd 管理或监控的 httpd 服务。
Linux LAMP平台概述及编译安装HTTP服务(Apache)
Linux LAMP平台概述及编译安装HTTP服务(Apache)

启动HTTP服务,设置自启动,检查HTTP单元是否启动
Linux LAMP平台概述及编译安装HTTP服务(Apache)


修改配置文件httpd.conf
vi /usr/local/httpd/conf/httpd.conf
Linux LAMP平台概述及编译安装HTTP服务(Apache)

更改内容:Linux LAMP平台概述及编译安装HTTP服务(Apache)

更改后:
Linux LAMP平台概述及编译安装HTTP服务(Apache)

重启httpd服务
Linux LAMP平台概述及编译安装HTTP服务(Apache)

查看80端口状态
Linux LAMP平台概述及编译安装HTTP服务(Apache)

HTTP服务已经安装完成。


验证:
lynx 20.0.0.7 (IP地址选取本机设置的IP地址,可以用 ip add 命令查看获取)
如果没有lynx,可以用yum -y install lynx 安装后即可。
Linux LAMP平台概述及编译安装HTTP服务(Apache)
Linux LAMP平台概述及编译安装HTTP服务(Apache)

在网页上默认显示的内容在:/usr/local/httpd/htdocs/index.html
我们可以通过更改index.html中的内容改变网页显示的内容。
Linux LAMP平台概述及编译安装HTTP服务(Apache)
Linux LAMP平台概述及编译安装HTTP服务(Apache)

修改后,再次验证:
Linux LAMP平台概述及编译安装HTTP服务(Apache)
Linux LAMP平台概述及编译安装HTTP服务(Apache)