LNMP 环境是指在Linux系统中,搭建由Linux、Nginx、MySQL/MariaDB、PHP组成的Web应用平台。本文介绍如何在Ubuntu 18.04实例上部署LNMP环境。
远程连接云服务器并登录,具体操作请参考登录Linux实例小节。
执行以下命令,更新安装包仓库。apt update && apt upgrade -y
执行以下命令,安装Nginx。apt install -y nginx
执行以下命令,查看Nginx版本。nginx -v
回显如下,表示安装成功。nginx version: nginx/1.14.0 (Ubuntu)
执行以下命令,设置Nginx服务开机自启动。systemctl enable nginx
在本地浏览器中输入http://<ECS实例公网IP地址>/
访问Nginx。
回显如下,表示Nginx搭建成功。
apt install -y mariadb-server mariadb-client
mysql -V
mysql Ver 15.1 Distrib 10.1.48-MariaDB, for debian-linux-gnu (x86_64) using readline 5.2
systemctl enable mariadb
systemctl status mariadb
Active: active (running)
表示已启动。mysql_secure_installation
按回车键确认设置密码。
输入y
并按回车键,确认修改数据库的root密码。
设置MariaDB密码并按回车键,默认不显示输入密码。
再次输入新密码并按回车键,确认设置该密码。
说明
请输入符合密码验证策略强度的密码。
输入y
并按回车键,移除匿名用户。
输入y
并按回车键,禁止root账号远程登录。
输入y
并按回车键,删除test
库及对test
库的访问权限。
输入y
并按回车键,重新加载授权表。
执行以下命令,安装PHP。apt install -y php php-fpm php-mysql
执行以下命令,查看PHP版本。php -v
回显如下,表示安装成功。
PHP 7.2.24-0ubuntu0.18.04.13 (cli) (built: Jul 6 2022 12:23:22) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.2.24-0ubuntu0.18.04.13, Copyright (c) 1999-2018, by Zend Technologies
PHP默认开机自启动,您无需进行额外配置。
执行以下命令,查看Nginx配置文件的路径。cat /etc/nginx/nginx.conf
回显如下,include
配置项即为文件的路径。
执行以下命令,在配置文件目录下备份配置文件。
说明
请注意,不要将配置文件备份在/etc/nginx/sites-enabled/
目录下,Nginx会加载/sites-enabled
目录中任何名称的配置文件,导致冲突。
cd /etc/nginx/sites-enabled/ cp default /tmp/default.conf
执行以下命令,修改原配置文件。vim default
按“i”键进入编辑模式,在index
中修改以下内容。
root /var/www/html;#将该路径为Nginx默认的网站根目录,您可以按需更换。 # Add index.php to the list if you are using PHP index index.php index.html index.htm index.nginx-debian.html; #添加默认首页信息index.php。 }
去掉被注释的location ~ \.php$
大括号以下行前面的#
,并修改以下内容。
location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;#修改php版本为已安装的php版本,本例为7.2 }
按“Esc”,输入“:wq”,按Enter
键,保存文件并返回。
执行以下命令,重启Nginx服务。systemctl restart nginx
vim <网站根目录>/phpinfo.php #将<网站根目录>替换为您在Nginx配置文件default.conf文件中配置的网站根目录。
vim /var/www/html/phpinfo.php
<?php echo phpinfo(); ?> #phpinfo()会展示PHP的所有配置信息
Enter
键,保存文件并返回。http://<ECS实例公网IP地址>/phpinfo.php
访问LNMP。