由于之前是用ubuntu18.04搭建的,后来使用ubuntu 20.04的系统做为个人开发环境,这个版本很不错,是我用过的最惊艳的linux桌面版本。下面给大家分享下lnmp环境的搭建方法,它和lamp差别在哪,主要是webserver的差异,一个是Apache httpd,一个nginx各有千秋,我用nginx习惯了。

打开网易新闻 查看更多图片

需要用到的软件:

nginx1.18

php7.4

mysql8.0

这里的直接从Ubuntu软件仓库时安装了,有的同学喜欢自编译配置,我没有特殊的需求,就用公用仓库的版本了。不浪费大家时间,直接开始

1、先安装nginx,一条命令就可以了

打开网易新闻 查看更多图片

2、安装php7.4 这里我安装php-dev

打开网易新闻 查看更多图片

3、安装mysql

打开网易新闻 查看更多图片

下面开始安装php-fpm

打开网易新闻 查看更多图片

看一下php-fpm是否在运行看这里 /var/run/php-fpm.sock

打开网易新闻 查看更多图片

配置nginx支持php 文件/etc/nginx/sites-enabled/default

PHP-FPM 与 Nginx 通信方式有两种:
一种是基于TCP的 Internet domain socket 方式,一种是 UNIX domain socket 方式。
UNIX domain socket 可以使同一台操作系统上的两个或多个进程进行数据通信。 UNIX domain socket 的接口和 Internet domain socket 很像,但它不使用网络底层协议来通信。

服务器压力不大的情况下,这两种方式性能差别不大,但在压力比较大的时候,用UNIX domain socket方式,效率较高。

打开网易新闻 查看更多图片

我们在配置文件中还要添加一个index.php便于直接访问这个默认文档

打开网易新闻 查看更多图片

按照上面的配置好后,我们简单测试一下,建一个php文件测试一下

打开网易新闻 查看更多图片

我们访问 ip/index.php出现下面的信息说明配置成功。

打开网易新闻 查看更多图片

由于我要用到验证码,所以再安装一个gd模块,是不是很简单,直接install就可以了

打开网易新闻 查看更多图片
打开网易新闻 查看更多图片

配置成功。

接下来配置一下mysql,这里有注意的地方,ubuntu安装mysql后用root账户登入会出现问题:ERROR 1698 (28000): Access denied for user 'root'@'localhost',什么情况~~还一个debian-sys-maint账户,是安装mysql时系统自动生成的mysql用户,debian和ubuntu系统都会这样做, 这里密码是随机的,修不修改随你 文件在/etc/mysql/debian.cnf

打开网易新闻 查看更多图片

登录后修改root密码

打开网易新闻 查看更多图片

这里要注意,自5.7版本以后,如果没有为root用户提供密码,也就是说我们没设置密码,空密码的话。它将使用auth_socket插件。该插件不关心,也不需要密码。它只检查用户是否使用UNIX套接字进行连接,然后比较用户名。

打开网易新闻 查看更多图片

此时我们查看一下root是没有密码的

打开网易新闻 查看更多图片

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'test';

密码要符合强密码规则 。

打开网易新闻 查看更多图片

设置成功。

按我的步骤就可以正常运行了,小伙伴们快去实战一下吧。