前言

准备做点关于WordPress的测试,需要在本地搭建环境(非服务器),由于电脑系统为ubuntu20.04,于是就把搭建LNMP环境的过程记录下来了。

前提条件:安装环境

本教程示例步骤适用于以下软件版本:
操作系统:Ubuntu 20.04 64位
Nginx版本:Nginx 1.18.0
MySQL版本:MySQL 8.0.20
PHP版本:PHP 7.4.3

步骤一:安装 Nginx

1.运行以下命令安装Nginx。

sudo apt install nginx

2.运行以下命令查看Nginx版本。

nginx -v

3.查看Nginx服务

sudo systemctl status nginx

步骤二:安装 PHP

1.运行以下命令安装PHP。

sudo apt install php7.4 php7.4-fpm php7.4-mysql

更多扩展根据需求自行安装。

2.运行以下命令查看PHP版本。

php -v

3.运行以下命令查看进程。

ps -ef |grep php

步骤三:安装 MySQL

1.运行以下命令安装MySQL。

sudo apt install mysql-server

2.运行以下命令查看MySQL版本号。

mysql -V

3.运行以下命令启动MySQL。

sudo service mysql start

步骤四:配置Nginx

1.运行以下命令备份Nginx配置文件。

sudo cp /etc/nginx/sites-available/default /etc/nginx/sites-available/default.bak

2.修改Nginx配置文件,添加Nginx对PHP的支持。

运行以下命令打开Nginx配置文件。

sudo vi /etc/nginx/sites-available/default

按i进入编辑模式。

在server大括号内,添加下列配置信息。

server {
    listen 80 default_server;
    listen [::]:80 default_server;

    # SSL configuration
    #
    # listen 443 ssl default_server;
    # listen [::]:443 ssl default_server;
    #
    # Note: You should disable gzip for SSL traffic.
    # See: https://bugs.debian.org/773332
    #
    # Read up on ssl_ciphers to ensure a secure configuration.
    # See: https://bugs.debian.org/765782
    #
    # Self signed certs generated by the ssl-cert package
    # Don't use them in a production server!
    #
    # include snippets/snakeoil.conf;

    root /home/devil/www;

    # Add index.php to the list if you are using PHP
    index index.html index.htm index.php index.nginx-debian.html;

    server_name _;

    location / {
        # First attempt to serve request as file, then
        # as directory, then fall back to displaying a 404.
        try_files $uri $uri/ =404;
        index index.php index.html index.htm;
    }

    # pass PHP scripts to FastCGI server
    #
    location ~ \.php$ {
        root /home/devil/www;
        fastcgi_index index.php;
        fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
        include fastcgi_params;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
    #   # With php-fpm (or other unix sockets):
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
    #   # With php-cgi (or other tcp sockets):
    #   fastcgi_pass 127.0.0.1:9000;
    }

    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    location ~ /\.ht {
        deny all;
    }
}

按下Esc键后,输入:wq并回车以保存并关闭配置文件。

运行以下命令测试nginx配置文件中是否存在语法错误

sudo nginx -t

3.运行以下命令重新启动Nginx服务。

sudo systemctl restart nginx

4.运行以下命令设置Nginx服务开机自启动。

sudo systemctl enable nginx

步骤五:配置MySQL

1.运行以下命令进入MySQL命令提示符界面。

sudo mysql

2.运行以下命令重新设置root用户密码。

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

步骤六:配置PHP

1.新建phpinfo.php文件,用于展示PHP信息。

运行以下命令新建文件。

vim <网站根目录>/phpinfo.php  #将<网站根目录>替换为您配置的网站根目录。

网站根目录是您在nginx.conf文件中location ~ .php$大括号内配置的root值。
本教程配置的网站根目录为/home/devil/www,因此命令为:

vim /home/devil/www/phpinfo.php

按i进入编辑模式。

输入下列内容,函数phpinfo()​会展示PHP的所有配置信息。

<?php echo phpinfo(); ?>

按Esc键后,输入:wq并回车以保存并关闭配置文件。

2.运行以下命令重新启动PHP-FPM。

sudo systemctl restart php7.4-fpm

3.运行以下命令设置PHP-FPM开机自启动。

sudo systemctl enable php7.4-fpm

步骤七:安装phpMyAdmin(可选)

1.运行以下命令安装phpMyAdmin。

sudo apt-get install phpmyadmin

窗口提示选择服务器,注意不要直接回车,而是确定选中 apache2 回车。

设定 phpMyAdmin 的密码。

2.运行以下命令建立/home/devil/www下的软连接

sudo ln -s /usr/share/phpmyadmin /home/devil/www/phpmyadmin

3.运行以下命令重新启动Nginx服务。

sudo systemctl restart nginx

4.验证

打开浏览器,地址栏输入localhost/phpmyadmin,账号输入root,密码输入MySQL密码即可登录。4.打开浏览器,地址栏输入localhost/phpmyadmin,账号输入root,密码输入MySQL密码即可登录。
也可以账号phpmyadmin,密码按刚才安装phpmyadmin设的密码,只是本账户权限比root要低一些。

步骤八:测试访问LNMP平台

打开浏览器。
在地址栏输入http://127.0.0.1/phpinfo.php。
返回结果为PHP信息,表示LNMP本地开发环境部署成功。


矫情的人,狗血的文!