👉点击这里申请火山引擎VIP帐号,立即体验火山引擎产品>>>
软件版本
操作系统:本文以CentOS 8.3为例。
Nginx:高性能的HTTP和反向代理的轻量级Web服务器,本文以Nginx 1.22.0为例。
MySQL/MariaDB:数据库管理系统,本文以MariaDB 15.1和MySQL 8.0.26为例。
PHP:在服务器端执行的嵌入HTML文档的脚本语言,本文以PHP 7.3.20为例。
前提条件
您已购买Linux实例。具体操作请参见购买云服务器。
您已为Linux实例绑定公网IP,使其具备访问公网的能力。如未绑定,请参见绑定公网IP。
步骤一:安装并配置Nginx
远程连接云服务器并登录,具体操作请参考登录Linux实例小节。
执行以下命令,安装Nginx,以Nginx为1.22.0为例。
dnf -y install https://mirrors.ivolces.com/nginx_all/centos/7/x86_64/RPMS/nginx-1.22.0-1.el7.ngx.x86_64.rpm
执行以下命令,查看Nginx版本。
nginx -v
nginx version: nginx/1.22.0
执行以下命令,查看Nginx配置文件的路径。
cat /etc/nginx/nginx.conf
执行以下命令,在配置文件目录下备份配置文件。
cd /etc/nginx/conf.dcp default.conf default.conf.bak
执行以下命令,修改原配置文件。
vi default.conf
按i键进入编辑模式,在location中修改以下内容。
location / {root /usr/share/nginx/html; #将该路径替换为您的网站根目录,本文以/usr/share/nginx/html为例,您可以直接复用,但在实际业务场景中,建议您替换为您自己的网站根目录。index index.html index.htm index.php; #添加默认首页信息index.php。}
去掉被注释的location ~ \.php$ 大括号前面的# ,并修改以下内容。
location ~ \.php$ {root /usr/share/nginx/html; #将该路径替换为您的网站根目录,本文以/usr/share/nginx/html为例,您可以直接复用,但在实际业务场景中,建议您替换为您自己的网站根目录。fastcgi_pass unix:/run/php-fpm/www.sock; #修改为unix:/run/php-fpm/www.sock。Nginx通过UNIX套接字与PHP-FPM建立联系,该配置与/etc/php-fpm.d/www.conf文件内的listen配置一致。fastcgi_index index.php;fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; #将/scripts$fastcgi_script_name修改为$document_root$fastcgi_script_name。include fastcgi_params;}
按Esc,输入:wq按回车键,保存并退出文件。
执行以下命令,启动Nginx服务。
systemctl start nginx
执行以下命令,设置Nginx服务开机自启动。
systemctl enable nginx
在本地浏览器中输入http://<ECS实例公网IP地址>/访问Nginx。
步骤二:安装并配置MariaDB/MySQL
安装并配置MariaDB
执行以下命令,安装MariaDB。
dnf -y install @mariadb
执行以下命令,查看MariaDB版本。
mysql -V
mysql Ver 15.1 Distrib 10.3.28-MariaDB, for Linux (x86_64) using readline 5.1
执行以下命令,启动MariaDB服务并设置为开机自启动。
systemctl enable --now mariadb
执行以下命令,查看MySQL服务是否已启动。
systemctl status mariadb
执行以下命令,执行MariaDB安全性操作并设置密码。
mysql_secure_installation
按回车键确认设置密码。
输入y并按回车键,确认修改数据库的root密码。
设置MariaDB密码并按回车键,默认不显示输入密码。
再次输入新密码并按回车键,确认设置该密码。
输入y并按回车键,移除匿名用户。
输入y并按回车键,禁止root账号远程登录。
输入y并按回车键,删除test库及对test库的访问权限。
输入y并按回车键,重新加载授权表。
安装并配置MySQL
执行以下命令,安装MySQL。
dnf -y install @mysql
执行以下命令,查看MySQL版本。
mysql -V
mysql Ver 8.0.26 for Linux on x86_64 (Source distribution)
执行以下命令,启动MySQL服务并设置为开机自启动。
systemctl enable --now mysqld
执行以下命令,查看MySQL服务是否已启动。
systemctl status mysqld
执行以下命令,执行MySQL安全性操作并设置密码。
mysql_secure_installation
输入y并按回车键开始相关配置。
选择密码验证策略强度,输入2并按回车键。建议选择高强度的验证策略,其中0:表示低、1:表示中、2:表示高。
设置MySQL新密码并按回车键,默认不显示输入密码。
再次输入新密码并按回车键,输入y确认设置该密码。
输入y并按回车键,移除匿名用户。
设置是否允许远程连接MySQL:
禁止远程连接:输入y并按回车键。
允许远程连接:输入n并按回车键。
输入y并按回车键,删除test库及对test库的访问权限。
输入y并按回车键,重新加载授权表。
步骤三:安装并配置PHP
执行以下命令,添加并更新epel源。
dnf -y install epel-releasednf -y update epel-release
执行以下命令,删除缓存的无用软件包并更新软件源。
dnf clean alldnf makecache
执行以下命令,启用php:7.3模块。
dnf -y module enable php:7.3
本示例使用php:7.3版本,如果您需要使用php:7.4,您需要首先安装remi源,再启动PHP模块。安装remi源命令为dnf -y install https://rpms.remirepo.net/enterprise/remi-release-8.rpm。
执行以下命令,安装PHP对应模块。
dnf -y install php php-curl php-dom php-exif php-fileinfo php-fpm php-gd php-hash php-json php-mbstring php-mysqli php-openssl php-pcre php-xml libsodium
执行以下命令,查看PHP版本。
php -v
PHP 7.3.20 (cli) (built: Jul 7 2020 07:53:49) ( NTS )Copyright (c) 1997-2018 The PHP GroupZend Engine v3.3.20, Copyright (c) 1998-2018 Zend Technologies
执行以下命令打开配置文件。
vi /etc/php-fpm.d/www.conf
按i键进入编辑模式,将user = apache和group = apache中的apache修改为nginx。
按Esc,输入:wq按回车键,保存并退出文件。
执行以下命令,启动PHP-FPM服务。
systemctl start php-fpm
执行以下命令,设置PHP-FPM服务开机自启动。
systemctl enable php-fpm
步骤四:访问LNMP
执行以下命令,创建测试文件。
vim <网站根目录>/phpinfo.php
按i键进入编辑模式,输入以下内容。
<?php echo phpinfo(); ?>
按Esc键,输入:wq,按Enter键,保存文件并返回。
在本地浏览器中输入http://<ECS实例公网IP地址>/phpinfo.php访问LNMP。