2024年6月8日发(作者:)

一、什么是LNMP

LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构。

Linux是一类Unix计算机操作系统的统称,是目前最流行的免费操作系统。代表版本有:debian、centos、

ubuntu、fedora、gentoo等。

Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。

Mysql是一个小型关系型数据库管理系统。

PHP是一种在服务器端执行的嵌入HTML文档的脚本语言。

这四种软件均为免费开源软件,组合到一起,成为一个免费、高效、扩展性强的网站服务系统。

二、开始搭建环境

开始之前先更新系统源

1、安装mysql数据库

说明:安装过程会提示设置root超级用户密码

2、安装nginx和php

说明:安装好nginx,打开浏览器输入localhost看到Welcometonginx!说明安装成功了。

当前默认安装的版本:nginx对应1.12.0,php对应7.1(通常是向下兼容,根据特殊需要,可以制

定版本安装,例如sudoapt-getinstallphp5.6)

3、安装PHPFastCGI管理器

4.修改配置文件

a、修改php-fpm配置文件

可以用如下方式检查下配置文件是否有错误

修改完配置文件,需要重启下php-fpm7.1

b、修改nginx配置文件

说明:

1)特别注意红色标记部分为修改或添加部分;

2)不管用那种方式,通信方式一定要对应。

修改重启下nginx

nginx检查配置文件命令是

说明:可以根据自己项目环境进行配置

5、测试php

我们在/var/www目录下,新建个测试下看看

解决问题:

此时我们发现,在浏览器里边测试localhost/显示空白,经过百度找到解决方案如下:

由于nginx与PHP-fpm之间的一个小bug,会导致这样的现象:网站中的静态页面*.html都能正常

访问,而*.php文件虽然会返回200状态码,但实际输出给浏览器的页面内容却是空白。

简而言之,原因是nginx无法正确的将*.php文件的地址传递给php-fpm去解析,相当于php-fpm接

受到了请求,但这请求却指向一个不存在的文件,于是返回空结果。为了解决这个问题,需要改动nginx

默认的fastcgiparams配置文件:

在文件的最后增加两行:

然后重启Firefly,重新访问localhost/即可显示如图:

6、显示上图说明已配置成功,默认安装php缺少很多拓展库,可以根据需要自行安装

a、查看PHP已安装的拓展库[php-m]:

b、安装拓展库,例如php-mysql

7、安装phpMyAdmin

phpMyAdmin是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具,

让管理者可用Web接口管理MySQL数据库。

a、安装phpmyadmin之前,先安装mysql,搭建LNMP环境时候已经安装过mysql可以跳过此步骤:

说明:安装过程中需要输入root用户密码

b、安装phpmyadmin

安装时选择自动配置数据库,输入数据库root帐号的密码

c、建立/var/www下的软链接

配置成功后可通过localhost/phpmyadmin进行访问,默认帐号为root,密码为安装phpmyadmin时设

置的初始密码

说明:如果web服务器是apache,则需要修改PHP配置文件

b、安装拓展库,例如php-mysql