前提:在阿里云服务器ECS进行部署
配置信息:
- CPU: 1核
- 内存: 1 GiB
- 网络类型:专有网络VPC
- IP地址:公网IP
操作流程(此流程参照阿里云官网的操作手册)
使用云服务器ECS手动搭建LNMP平台的操作流程如下:
-
# 以下步骤为真实操作
步骤一:检查防火墙状态
1、运行getenforce命令查看SELinux的当前状态。
getenforce
Disabled
2、
如果SELinux状态参数是Disabled, 则SELinux为关闭状态。
如果SELinux状态参数是Enforcing,则SELinux为开启状态。
步骤二:安装Nginx
1、运行以下命令安装Nginx
yum -y install nginx
2、查看Nginx版本
nginx -v
显示以下结果,表示Nginx安装成功。
nginx version: nginx/1.16.1
步骤三:安装MySQL
1、运行以下命令更新YUM源
rpm -Uvh http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
2、运行以下命令安装MySQL
yum -y install mysql-community-server
3、查看MySQL版本号
mysql -V
返回如下结果,表示MySQL安装成功。
mysql Ver 14.14 Distrib 5.7.28, for Linux (x86_64) using EditLine wrapper
步骤四:安装PHP
1、安装时我碰到了此问题
从报错信息可以看出是ius.repo出了问题
2、于是我进行了下面的操作
cd /etc/yum.repos.d
vi ius.repo
把baseurl这一行前面的#全部去掉
3、下面开始安装PHP
1)更新YUM源
php高版本的yum源地址,有两部分,其中一部分是epel-release,另外一部分来自webtatic。如果跳过epel-release的话,安装webtatic的时候,会报错,所以要安装两部分。
yum install epel-release -y
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
2)安装扩展包(根据个人需要选择,目前个人先尝试简单版本)
- 普通版:
yum -y install php72w php72w-cli php72w-fpm php72w-common php72w-devel
- 豪华版:
yum -y install php72w php72w-cli php72w-fpm php72w-common php72w-devel php72w-embedded php72w-gd php72w-mbstring php72w-mysqlnd php72w-opcache php72w-pdo php72w-xm
3)查看安装是否成功
php -v
PHP 7.2.27 (cli) (built: Jan 26 2020 15:49:49) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
步骤五:配置Nginx
1、备份Nginx配置文件
cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.bak
2、修改Nginx配置文件,添加Nginx对PHP的支持
1)打开Nginx配置文件
vim /etc/nginx/nginx.conf
2)添加配置信息
按i进入编辑模式,在server大括号内,添加下列配置信息
location / {
index index.php index.html index.htm;
}
location ~ .php$ {`
root /usr/share/nginx/html; #将/usr/share/nginx/html替换为您的网站根目录,本教程使用/usr/share/nginx/html作为网站根目录
`fastcgi_pass 127.0.0.1:9000; #Nginx通过本机的9000端口将PHP请求转发给PHP-FPM进行处理
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params; #Nginx调用fastcgi接口处理PHP请求
}
3)添加后如下图所示
3、启动Nginx服务
systemctl start nginx
4、设置Nginx服务开机自启动
systemctl enable nginx
步骤六:配置MySQL
1、启动MySQL服务
systemctl start mysqld
2、设置MySQL服务开机自启动
systemctl enable mysqld
3、查看/var/log/mysqld.log文件,获取并记录root用户的初始密码
grep 'temporary password' /var/log/mysqld.log
说明:下一步重置root用户密码时,会使用该初始密码。
4、配置MySQL的安全性
mysql_secure_installation
安全性的配置包含以下五个方面:
1)重置root账号密码
2)输入Y删除匿名用户账号
3)输入Y禁止root账号远程登录
4)输入Y删除test库以及对test库的访问权限
5)输入Y重新加载授权表
5、最后结果如下图所示
步骤七:配置PHP
1、新建phpinfo.php文件,用于展示phpinfo信息
vim <网站根目录>/phpinfo.php #将<网站根目录>替换为您配置的网站根目录。
vim /usr/share/nginx/html/phpinfo.php
2、添加以下内容
<h1>Hello PHP, ljm</h1>
<?php
echo phpinfo();
?>
3、启动PHP-FPM
systemctl start php-fpm
4、设置PHP-FPM开机自启动
systemctl enable php-fpm
步骤八:测试访问LNMP平台
1、打开任意浏览器
2、在地址栏输入http://<ECS实例公网IP地址>/phpinfo.php。
返回结果如下图所示,表示LNMP环境部署成功
后续步骤
测试访问LNMP平台成功后,建议将phpinfo.php文件删除,消除安全隐患
rm -rf <网站根目录>/phpinfo.php #将<网站根目录>替换为您在nginx.conf中配置的网站根目录
rm -rf /usr/share/nginx/html/phpinfo.php