文章目录
- 一、LAMP概述
- 二、LAMP的构成组件
- 三、LAMP的应用优势
- 四、安装Apache网站服务器
一、LAMP概述
LAMP(Linux-Apache-MySQL-PHP)网站架构是目前流行的Web框架,该框架包括:
Linuc操作系统,Apache网络服务器,MySQL数据库,PHP编程语言,所有组成产品均是开源软件,是一个成熟的架构框架,很多商业应用都是采取这个架构,LAMP具有通用、跨平台、高性能、低价格的优势,因此LAMP无论在性能、质量还是价格上都是企业搭建网站的首选。
二、LAMP的构成组件
在LAMP的四个构成组件中,每个组件都承担着一部分关键的作用
1、Linux操作系统:作为LAMP架构的基础,提供用于支撑web站点的操作系统,能够与其他三个组件提供更好的稳定性,兼容性
2、Apache网站服务器:作为LAMP架构前端,是一个功能强大,稳定性好的web服务器程序,该服务器直接面向用户提供网站访问,发送网页、图片等内容。
3、MySQL数据库服务器:作为后端,是开源关系型数据库系统,在企业网站,业务系统等应用中,各种账户信息、产品信息、客户资料以及业务数据等都是可以存储到MySQL数据库中,其他程序通过SQL语句来查询,更改这些数据。
4、PHP网页编程语言:作为开发网页的编程语言,负责解释动态网页文件,并提供web应用程序的开发和运行环境。其中PHP是一种被广泛应用的开放源代码的多用途脚本语言,它是可以嵌入到HTML中,尤其适合于web应用开发。
三、LAMP的应用优势
1、成本低廉:构成组件都死开放源代码的软件,可以自由获得使用,在技术上和许可证方面没有太严格的限制,大大降低了企业的实施成本。
2、可定制:拥有大量的额外组件和可扩展功能的模块,能够满足大部分企业应用的定制需求,甚至可以自行开发,添加新的功能。
3、易于开发:基于LAMP 的动态网站中,页面代码简洁,与HTML标记语言的结合度很好,即使是非专业程序员也能轻松读懂或者修改网页代码。
4、方便易用:PHP属于解释性语言,开发的各种web程序不需要编译,方便进行移植使用。
5、安全和稳定:得益于开源的优势,大量的程序源的关注并持续改进LAMP的各个组件,发现的问题能够很快得到解决。
四、安装Apache网站服务器
1、首先下载Apache支持的底层软件包的支持
[root@localhost ~]# yum -y install apr-util-devel pcre-devel #安装的是底层的软件包
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.ustc.edu.cn
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
正在解决依赖关系
--> 正在检查事务
---> 软件包 apr-util-devel.x86_64.0.1.5.2-6.el7 将被 安装
--> 正在处理依赖关系 pkgconfig(apr-1),它被软件包 apr-util-devel-1.5.2-6.el7.x86_64 需要
--> 正在处理依赖关系 openldap-devel(x86-64),它被软件包 apr-util-devel-1.5.2-6.el7.x86_64 需要
--> 正在处理依赖关系 libdb-devel(x86-64),它被软件包 apr-util-devel-1.5.2-6.el7.x86_64 需要
--> 正在处理依赖关系 expat-devel(x86-64),它被软件包 apr-util-devel-1.5.2-6.el7.x86_64 需要
2、切换cd /opt/目录下,将在Apache官网上下载的安装包拉入命令行中
按照这样的方式,将apr-1.6.2.tar.gz、httpd-2.4.29.tar.bz2软件包拉入该命令行当中
3、当软件包拉入之后,开始将这三个包进行解压
[root@localhost ~]# cd /opt/ #切换目录
[root@localhost opt]# rz -E #拉入软件包
rz waiting to receive.
[root@localhost opt]# rz -E
rz waiting to receive.
[root@localhost opt]# rz -E
rz waiting to receive.
[root@localhost opt]# ls #当软件包拉入成功后,查看一下
apr-1.6.2.tar.gz apr-util-1.6.0.tar.gz httpd-2.4.29.tar.bz2 rh
[root@localhost opt]# tar xf apr-1.6.2.tar.gz
[root@localhost opt]# tar xf apr-util-1.6.0.tar.gz
[root@localhost opt]# tar xf httpd-2.4.29.tar.bz2
[root@localhost opt]# ls #这时可以看到三个软件包都已经解压完成
apr-1.6.2 apr-util-1.6.0 httpd-2.4.29 rh
apr-1.6.2.tar.gz apr-util-1.6.0.tar.gz httpd-2.4.29.tar.bz2
4、接下来将已经解压完成的软件包 apr-1.6.2 、apr-util-1.6.0移动到http-2.4.29中
[root@localhost opt]# ls
apr-1.6.2 apr-util-1.6.0 httpd-2.4.29 rh
apr-1.6.2.tar.gz apr-util-1.6.0.tar.gz httpd-2.4.29.tar.bz2
[root@localhost opt]# mv apr-1.6.2 httpd-2.4.29/srclib/apr #移动并给文件取名
[root@localhost opt]# mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util
[root@localhost opt]#
5、做完上面的步骤后,在下载
[root@localhost opt]# yum -y install gcc gcc-c++ make pcre perl pcre-devel expat-devel
gcc \ #c语言的编辑器
gcc-c++ #c++的编译器
make #源代码编译器(源代码转换成二进制文件)
pcre #pcre是一个perl函数库,包括perl 兼容的正则表达式库
pcre-devel #perl的接口开发包
expat-devel #用于支持网站解析HTML、XML文件
perl #perl语言编译器
更新完毕:
gcc.x86_64 0:4.8.5-44.el7 gcc-c++.x86_64 0:4.8.5-44.el7 make.x86_64 1:3.82-24.el7
perl.x86_64 4:5.16.3-299.el7_9
作为依赖被升级:
cpp.x86_64 0:4.8.5-44.el7 gcc-gfortran.x86_64 0:4.8.5-44.el7
libgcc.x86_64 0:4.8.5-44.el7 libgfortran.x86_64 0:4.8.5-44.el7
libgomp.x86_64 0:4.8.5-44.el7 libquadmath.x86_64 0:4.8.5-44.el7
libquadmath-devel.x86_64 0:4.8.5-44.el7 libstdc++.x86_64 0:4.8.5-44.el7
libstdc++-devel.x86_64 0:4.8.5-44.el7 perl-libs.x86_64 4:5.16.3-299.el7_9
[root@localhost opt]# cd httpd-2.4.29/ #切换到httpd-2.4.29
[root@localhost httpd-2.4.29]# ./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi
--prefix=/usr/local/httpd \ #指定httpd服务程序的安装路径
--enable-so \ #启用动态加载核心模块支持,使httpd具备进一步扩展功能的能力
--enable-rewrite \ #启用网页地址重写功能,用于网站优化、防盗链及目录迁移维护
--enable-charset-lite \ #启动字符集支持,以便支持使用各种字符集编码的页面
--enable-cgi #启动cgi(通用网关接口)脚本程序支持,便于增强网站的外部扩展应用访问能力
[root@localhost httpd-2.4.29]# make && make install #进行编译
6、优化配置文件路径,并把httpd服务的可执行程序文件放入路径环境变量的目录中便于系统识别
[root@localhost httpd-2.4.29]# ln -s /usr/local/httpd/conf/httpd.conf /etc/
[root@localhost httpd-2.4.29]# ln -s /usr/local/httpd/bin/* /usr/local/bin/
[root@localhost httpd-2.4.29]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
7、进入/etc/init.d/httpd文件编辑器当中添加
[root@localhost httpd-2.4.29]# vim /etc/init.d/httpd
#!/bin/sh
# chkconfig: 35 85 21 //35级别自动运行 第85个启动 第21个关闭
# description: Apache is a World Wide Web server
#
# Licensed to the Apache Software Foundation (ASF) under one or more
[root@localhost httpd-2.4.29]# systemctl enable httpd
httpd.service is not a native service, redirecting to /sbin/chkconfig.
Executing /sbin/chkconfig httpd on
[root@localhost httpd-2.4.29]# chkconfig --add httpd #将httpd加入到系统管理器
8、再进入/usr/local/httpd/conf/httpd.conf文件当中编辑
vim /usr/local/httpd/conf/httpd.conf
--52行--修改加入本机的ip
Listen 192.168.159.183:80
--197行--取消注释,并修改
ServerName www.zhangsan.com:80
--221行--查看默认首页存放路径
DocumentRoot "/usr/local/httpd/htdocs"
[root@localhost httpd-2.4.29]# httpd -t #检查语法
Syntax OK
[root@localhost httpd-2.4.29]# cat /usr/local/httpd/htdocs/index.html #查看index.html里面的内容
<html><body><h1>It works!</h1></body></html>
[root@localhost httpd-2.4.29]# service httpd restart #重新启动httpd服务
httpd not running, trying to start
[root@localhost httpd-2.4.29]# netstat -anpt | grep 80 #查看80端口
tcp 0 0 192.168.159.183:80 0.0.0.0:* LISTEN 96705/httpd
9、然后打开物理计算机的浏览器进行验证