目录
前言
本场景将提供一台配置了CentOS 7.7的ECS实例(云服务器)。通过本教程的操作,您可以基于ECS实例快速搭建一套LNMP环境。
背景知识
云服务器(Elastic Compute Service,简称ECS)是阿里云提供的性能卓越、稳定可靠、弹性扩展的IaaS(Infrastructure as a Service)级别云计算服务。云服务器ECS免去了您采购IT硬件的前期准备,让您像使用水、电、天然气等公共资源一样便捷、高效地使用服务器,实现计算资源的即开即用和弹性伸缩。阿里云ECS持续提供创新型服务器,解决多种业务需求,助力您的业务发展。
Nginx
Nginx是一款轻量级的Web服务器、反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好。
1. 创建资源
-
在页面左侧,单击 云产品资源 下拉列表,查看本次实验所需资源。
-
单击屏幕右侧 创建资源 ,免费创建当前实验所需云产品资源。
说明:
资源创建过程需要1~3分钟。完成实验资源的创建后,您可以在 云产品资源 列表查看已创建的资源信息,例如:IP地址、子用户名称和子用户密码等。
2. 连接ECS服务器
成功创建资源后默认会打开Web Terminal操作服务器终端操作界面,您也可以点击右侧
按钮,切换到Web Terminal操作界面。
3. 安装并配置MySQL
1. 执行如下命令,下载并安装MySQL官方的Yum Repository。
wget http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql-community-server --nogpgcheck
2. 执行如下命令,启动 MySQL 数据库。
systemctl start mysqld.service
3. 执行如下命令,查看MySQL运行状态。
systemctl status mysqld.service
4. 执行以下命令,查看MySQL初始密码。
grep "password" /var/log/mysqld.log
5. 执行以下命令,登录数据库。
mysql -uroot -p
6. 执行以下命令,修改MySQL默认密码。
set global validate_password_policy=0; #修改密码安全策略为低(只校验密码长度,至少8位)。
ALTER USER 'root'@'localhost' IDENTIFIED BY '12345678';
7. 执行以下命令,授予root用户远程管理权限。
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '12345678';
8. 输入exit退出数据库。
4. 安装Nginx
1. 安装Nginx运行所需要的插件。
-
安装gcc。gcc是Linux下的编译器,它可以编译C、C++、Ada、Object C和Java等语言。
yum -y install gcc
-
安装pcre。pcre是一个perl库,Nginx的HTTP模块使用pcre来解析正则表达式。
yum install -y pcre pcre-devel
-
安装zlib。zlib是一个文件压缩和解压缩的库,Nginx使用zlib对HTTP数据包进行gzip压缩和解压。
yum install -y zlib zlib-devel
2. 下载Nginx安装包。
wget http://nginx.org/download/nginx-1.17.10.tar.gz
3. 解压Nginx安装包。
tar -zxvf nginx-1.17.10.tar.gz
4. 编译安装Nginx。
cd nginx-1.17.10
./configure
make && make install
5. 启动Nginx。
cd /usr/local/nginx/
sbin/nginx
6. 测试Nginx启动。在浏览器地址栏输入ECS服务器的公网地址,例如123.123.123.123,出现如下界面表示安装启动成功。
5. 安装PHP
1. 安装PHP。
yum -y install php php-mysql php-fpm
2. 在nginx.conf文件中增加对PHP的支持。
vim /usr/local/nginx/conf/nginx.conf
进入Vim编辑器后,按下i键进入编辑模式,在server的根路由配置中新增index.php。
location / {
root html;
index index.html index.htm index.php;
}
并在根路由下面新增以下配置。
if (!-e $request_filename) {
rewrite ^/(.*)$ /index.php/$1 last;
}
location ~ .*\.php(\/.*)*$ {
fastcgi_pass 127.0.0.1:9000;
include fastcgi.conf;
fastcgi_index index.php;
}
修改后的nginx.conf文件如下图所示。
按下ESC键,输入:wq保存并退出Vim编辑器。
3. 重启php-fpm服务。
systemctl restart php-fpm
4. 重启Nginx服务。
/usr/local/nginx/sbin/nginx -s reload
5. 检查PHP安装。
a. 在Nginx的网站根目录下创建PHP探针文件phpinfo.php。
echo "<?php phpinfo(); ?>" > /usr/local/nginx/html/phpinfo.php
b. 访问PHP探针页面。在浏览器地址栏输入xx.xx.xx.xx/phpinfo.php(请将xx.xx.xx.xx替换为ECS服务器的公网地址),出现如下页面表示PHP环境配置成功。
恭喜完成
通过本次实验您获得了
- Nginx + PHP服务端环境的部署
- 手动安装MySQL
实验后收获
- Nginx + PHP服务端环境的部署
- 手动安装MySQL