部署LAMP平台

本文详述了如何部署LAMP(Linux、Apache、MySQL、PHP)平台,涵盖Apache服务器的起源、特点和安装,MySQL的编译安装及访问,以及PHP运行环境的构建。通过源码编译安装Apache,配置httpd服务,安装MySQL并设置权限,最后安装PHP并测试LAMP协同工作,以确保一切正常运行。
摘要由CSDN通过智能技术生成


引言

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


一、LAMP 平台概述

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

二、Apache 网站服务基础

1. Apache 简介

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

2.Apache 的起源

  • Apache 服务器是针对若干个 Web 服务器程序进行整合、完善后形成的软件,其名称来源于“A Patchy Server”,意思是 “基于原有Web服务程序的代码进行修改(补丁)后形成的服务器程序”。
  • 1995年, Apache服务程序的1.0版本发布,之后一直由 Apache Group 负责该项目的管理和维护;直到1999年,在 Apache Group 的基础上成立了 Apache 软件基金会(Apache Software Foundation, ASF)。目前,Apache 项目一直由 ASF 负责管理和维护。
  • ASF是非盈利性质的组织,最初只负责 Apach Web 服务器项目的管理,随着 Web 应用需求的不断扩大,ASF 逐渐增加了许多与 Web 技术相关的开源软件项目,因此 Apache 现在不仅仅代表着 Web 服务器,更广泛地代表着 ASF 管理的众多开源软件项目。
  • ASF 基金会的官方网站是 http://www.apache.org/
  • Apache HTTP Server 是 ASF 旗下著名的软件项目之一,其正式名称是“httpd”,也就是曾经的 Apache 网站服务器。

3.Apache 的特点

Apache 服务器在功能、性能和安全性等方面的表现都是比较突出的,可以较好地满足 Web 服务器用户的应用需求。
其主要特点包括以下几个方面:

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

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

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

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

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

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

4. 安装 httpd 服务器

  • 在配置 Apache 网站服务之前,需要正确安装好 htppd 服务器软件。
  • 我们可以选择 用 YUM/RPM 安装、源码编译安装两种方式,前者相对比较简单快捷,但是在功能上有一定的局限性(无法人为干涉,不能知道源里面有什么)。
  • 源码编译安装的过程中,我们可以设定参数,按照需求来进行安装,并且安装的版本也可以自己选择,相比较YUM等方式就比较灵活。

4.1 安装前关闭防火墙

  • 关闭防火墙等
#为了避免发生端口冲突、程序冲突等现象,建议先卸载掉之前安装的 httpd 服务。
[root@localhost ~]#rpm -e httpd --nodeps
或
[root@localhost ~]#yum -y remove httpd

#关闭防火墙并且关掉开机自启,关闭Selinux安全机制
[root@localhost ~]#systemctl stop firewalld
[root@localhost ~]#systemctl disable firewalld
[root@localhost ~]#setenforce 0
setenforce: SELinux is disabled        #如果没有显示这个结果请重启,重启不行的话需要更改配置文件

[root@www ~]#vim /etc/sysconfig/selinux  #进去把第七行改为SELINUX=disabled,然后重启即可

#同步阿里云服务时间,以免后面的编译安装发生不可知的错误
[root@www ~]#ntpdate ntp1.aliyun.com
26 Sep 00:22:14 ntpdate[1781]: adjust time server 120.25.115.20 offset 0.001830 sec
  • 上传安装包到 /opt/ 目录
[root@www ~]#cd /opt/
[root@www /opt]#ls
apr-1.6.2.tar.gz  apr-util-1.6.0.tar.gz  httpd-2.4.29.tar.bz2  rh

4.2 安装环境依赖包

yum -y install \
gcc \							#C语言的编译器
gcc-c++ \						#C++的编译器
make \							#源代码编译器(源代码转换成二进制文件)
pcre \							#pcre是一个Perl函数库,包括perl 兼容的正则表达式库
pcre-devel \                    #perl的接口开发包
expat-devel \                   #用于支持网站解析HTML、XML文件
perl                            #perl语言编译器      

yum -y install gcc gcc-c++ make pcre-devel expat-devel perl     

4.3 源码编译及安装

  • 解包
tar zxvf apr-1.6.2.tar.gz
tar zxvf apr-util-1.6.0.tar.gz
tar xf httpd-2.4.29.tar.bz

mv apr-1.6.2 httpd-2.4.29/srclib/apr
mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util
  • 配置软件模块
[root@www /opt]#ls
apr-1.6.2.tar.gz  apr-util-1.6.0.tar.gz  httpd-2.4.29  httpd-2.4.29.tar.bz2  rh
[root@www /opt]#cd httpd-2.4.29/
[root@www /opt/httpd-2.4.29]#ls
ABOUT_APACHE     BuildBin.dsp    config.status  httpd.mak       libhttpd.mak  modules.o         server
acinclude.m4     buildconf       configure      httpd.spec      LICENSE       NOTICE            
......
#根据服务器的实际应用需要,可灵活设置不同的定制选项
./configure \
--prefix=/usr/local/httpd \		#指定 httpd 服务程序的安装路径
--enable-so \					#启用动态加载核心模块支持,使 httpd 具备进一步扩展功能的能力
--enable-rewrite \				#启用网页地址重写功能,用于网站优化、防盗链及目录迁移维护
--enable-charset-lite \			#启动字符集支持,以便支持使用各种字符集编码的页面
--enable-cgi					#启用CGI(通用网关接口)脚本程序支持,便于网站的外部扩展应用访问能力

./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi
  • 编译及安装
make && make install
#完成配置后,执行 make 命令进行编译,可将源代码转换为可执行的程序;make install 命令完成最后的安装过程
#将编译完的httpd程序及相关目录、文件复制到预设的安装目录(由配置时的 --prefix 选项指定)
#make的过程可能会比较长

4.4 确认安装结果

  • 由于指定的安装目录为/usr/local/httpd,因此httpd服务的各种程序、模块、帮助文件都将复制到此目录下
#如果有以下文件表明编译安装成功
[root@www /usr/local/httpd]#ls /usr/local/httpd/
bin  build  cgi-bin  conf  error  htdocs  icons  include  lib  logs  man  manual  modules
  • 上面输出结果中的主要目录用途如下:
    bin:存放 httpd 服务的各种执行程序文件,包括主程序 httpd、服务控制工具 apachectl 等。
    conf:存放 httpd 服务的各种配置文件,包括主配置文件 httpd.conf、增强配置子目录 extra 等。
    htdocs:存放网页文档,包括默认首页文件 index.html 等。
    logs:存放 httpd 服务的日志文件。
    modules:存放 httpd 服务的各种模块文件。
    cgi-bin:存放各种 CGI 程序文件。

4.5 优化执行路径

  • 通过源码编译安装的 httpd 服务,程序路径并不在默认的搜索路径中,为了使该服务在使用时更加方便,可以为相关程序添加符号链接。
ln -s /usr/local/httpd/conf/httpd.conf /etc/
ln -s /usr/local/httpd/bin/* /usr/local/bin/
  • 这样的话下次再执行相关命令时就不用输入这么长的路径了,省的输错导致一系列的问题发生。
#执行下面的命令相当于执行了"/usr/local/httpd/bin/httpd-v"命令
[root@www 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值