博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
LAMP环境搭建与配置(上)
阅读量:4125 次
发布时间:2019-05-25

本文共 3008 字,大约阅读时间需要 10 分钟。

LAMP是Linux Apache MySQL PHP的简写,即把Apache、MySQL以及PHP安装在Linux系统上,组成一个环境来运行PHP的脚本语言,通常是网站。我们可以把Apache+PHP安装在一台机器上,再把MySQL安装在另一台机器上,也可以把它们三个安装在同一台机器上。但Apache+PHP需要在一台机器上,这事因为PHP是作为Apache的一个模块存在的,它们必须在一起

安装MySQL

下载软件包
可以到MySQL官网去下载MySQL的包。现在所用的是免编译的二进制包·,需要注意的是如果使用的是CentOS 7,那么直接选择64位的包进行下载,查看自己的Linux是多少位的方法如下:在这里插入图片描述
这里,我已经将本章所需要的二进制免编译包提前下载好并放到/usr/local/src这个目录下,建议平常就将所有的软件包放到这个目录下
在这里插入图片描述初始化
首先将下载好的二进制源码包进行解压,如下:
在这里插入图片描述解压完后,将解压后的数据移动到/usr/local目录下,移动的同时新建一个mysql的目录,用来存放mysql的信息,如下:
在这里插入图片描述创建mysql用户,因为启动mysql需要该用户,如下:
在这里插入图片描述-s参数表示自定义shell
创建一个存放数据的目录,如下:(-p参数,表递归创建)
在这里插入图片描述将此目录的账户和所属组都设成MySQL,如下:
在这里插入图片描述不更改权限后续操作会出现问题
接下来就是执行一个脚本文件,命令如下:

./scripts/mysql_install_db --user=mysql --datadir=/data/mysql

user定义数据库的所属组,datadir定义数据库安装的位置

这时就会遇到错误信息提示,这是因为缺少包perl-Module-Install,需要使用如下命令进行安装:

yum install -y perl-Module-Install

然后再执行脚本文件,如下:

在这里插入图片描述在这里插入图片描述执行完命令显示两个ok即说明安装成功,或者再执行完命令后,输入echo$?看输出结果是否为0,如果为0即为安装成功
在这里插入图片描述
配置MySQL
首先将配置文件进行拷贝,如下:
在这里插入图片描述因为系统又默认的/etc/my.cnf,所以会提示覆盖。
然后打开配置文件,修改一些配置文件的内容,如下:
在这里插入图片描述修改完配置文件以后还要修改启动脚本,修改之前也要将启动脚本进行拷贝并修改其属性,如下:
在这里插入图片描述然后修改启动脚本,如下:
在这里插入图片描述在这里插入图片描述

将启动脚本加入系统的服务项,并设置成开机自启,如下:

在这里插入图片描述

真正查看MySQL服务是否启动可以来查看它的进程,如下:

在这里插入图片描述

看看有没有监听3306的端口,如下:

在这里插入图片描述

安装Apache

在安装之前,已经将所有需要的安装包下载好,只需解压即可
在这里插入图片描述

Apr和apr-utils是一个通用的数据库,它让httpd可以不关心底层的操作系统平台,可以很方便的移植。三者有依赖关系,所以要先安装apr,再安装apr-utils,最后安装httpd

解压三个源码包(这里httpd用2.4.39版本,apr用1.6.5版本,apr-utils用1.6.1版本),
如下:

tar -zxvf httpd-2.4.39.tar.gztar -zxvf apr-1.6.5.tar.gztar apr-util-1.6.1.tar.gz

解压完之后,进入apr的目录,对它进行编译操作,如下:

./configure --prefix=/usr/local/apr

这个时候进行报错,因为系统中缺少gcc的编译器,所以需要安装,如下:

yum install -y gcc

再次进行编译,

在这里插入图片描述

出现这样的情况,是因为系统缺少一个libtool的库,需要进行安装,如下:

在这里插入图片描述
再次进行编译,编译成功,如下:
在这里插入图片描述

上述的错误可以忽略。

然后进行make的编译和安装,如下
在这里插入图片描述
到底,apr就安装成功,接着安装apr-utils,先切换到apr-utils的目录下,之前已经进行了解压,所以这里直接开始编译,如下:

cd /usr/local/src/apr-util-1.6.1./configure  --prefix=/usr/local/apr-util  --with-apr=/usr/local/apr

在这里插入图片描述

这个时候进行make的编译和安装,如下:

在这里插入图片描述

报出如下错误,说明没有expat这个库文件,需要进行安装,如下:在这里插入图片描述

再次进行make编译安装,如下,echo $?的返回结果是0,说明安装成功

在这里插入图片描述
接下来就要进行Apache的安装,先进行目录的切换,如下:

cd  /usr/local/src/httpd-2.4.39

在这里插入图片描述

然后进行编译,如下:

在这里插入图片描述在这里插入图片描述
这里报错说明缺少了一个pcre的库文件,需要进行安装,如下:在这里插入图片描述

安装完成后再次进行编译,如下:

在这里插入图片描述

即可说明编译成功。

然后进行make编译安装,如下:

make  &&  make install

返回值是0,说明操作成功在这里插入图片描述

安装完成后,可以查看一下httpd的目录结构以及modules目录下面的模块文件,如下:

在这里插入图片描述

安装PHP

这里所用的PHP版本是5.6.30版本
首先对软件包进行解压,命令如下:

tar -zxvf php-5.6.30.tar.gz

然后切换到php-5.6.30目录,如下:在这里插入图片描述

然后进行编译,如下:在这里插入图片描述

这个时候报错,如下:在这里插入图片描述

报错的原因是因为没有libxml的库文件,需要进行安装,如下:

防止后面再次报错,我们提前将其余的指定库文件安装好,如下:

yum install -y openssl openssl-devel yum install -y bzip2 bzip2-devel yum install -y libpng libpng-devel yum install -y freetype freetype-develyum install -y epel-release yum install -y libmcrypt-devel yum install -y libjpeg-devel

安装完这些后,再次进行编译,即可成功,如下:在这里插入图片描述在这里插入图片描述

编译完成后,进行make编译和安装,如下:
在这里插入图片描述
echo $?的返回结果为0,即可说明成功
查看apache有没有加载出来php的模块,即可知道php是否安装成功,如下:在这里插入图片描述在这里插入图片描述
查看后发现多了一个php5的模块,说明php安装完成
安装完成后,要将配置文件拷贝出来,如下:在这里插入图片描述

配置httpd支持PHP

httpd的主配置文件是/usr/local/apache2.4/conf/httpd.conf
首先进入目录,并编辑配置文件,如下:在这里插入图片描述在这里插入图片描述
将servername注释掉的字段进行开放
在这里插入图片描述

添加这一行字段

在这里插入图片描述

将denied改为granted在这里插入图片描述

增加一个index.php的跳转,到此就设置完毕。进行测试,如下:在这里插入图片描述

测试LAMP是否成功

测试配置文件是否正确
启动httpd之前需要检验配置文件是否正确,如下:在这里插入图片描述

出现上述结果说明配置正确,然后启动httpd,如下:在这里插入图片描述

查看是否启动成功,如下:在这里插入图片描述

有这样的返回结果说明httpd已经成功启动。

另外,我们可以使用curl命令进行简单的测试,如下:在这里插入图片描述

有上述返回结果说明测试成功。

测试是否正确解析PHP
首先编写一个测试脚本,如下:
在这里插入图片描述

保存脚本后继续进行测试,如下:

在这里插入图片描述

能显示以上信息则说明PHP解析正确。至此,LAMP环境就搭建好了,但仅仅是安装好了软件,还有许多配置工作。

转载地址:http://frlpi.baihongyu.com/

你可能感兴趣的文章
基于P5.js的“绘画系统”
查看>>
《达芬奇的人生密码》观后感
查看>>
论文翻译:《一个包容性设计的具体例子:聋人导向可访问性》
查看>>
基于“分形”编写的交互应用
查看>>
《融入动画技术的交互应用》主题博文推荐
查看>>
链睿和家乐福合作推出下一代零售业隐私保护技术
查看>>
Unifrax宣布新建SiFAB™生产线
查看>>
艾默生纪念谷轮™在空调和制冷领域的百年创新成就
查看>>
NEXO代币持有者获得20,428,359.89美元股息
查看>>
Piper Sandler为EverArc收购Perimeter Solutions提供咨询服务
查看>>
RMRK筹集600万美元,用于在Polkadot上建立先进的NFT系统标准
查看>>
JavaSE_day12 集合
查看>>
JavaSE_day14 集合中的Map集合_键值映射关系
查看>>
Day_15JavaSE 异常
查看>>
异常 Java学习Day_15
查看>>
JavaSE_day_03 方法
查看>>
day-03JavaSE_循环
查看>>
Mysql初始化的命令
查看>>
day_21_0817_Mysql
查看>>
day-22 mysql_SQL 结构化查询语言
查看>>