Nginx是一款小巧而高效的Web服务器软件,可帮您在Linux系统下快速方便地搭建出LNMP Web服务环境。本教程介绍如何搭建LNMP环境,其中...
场景体验目标
本场景将提供一台配置了CentOS 7.7的ECS实例(云服务器)。通过本教程的操作,您可以基于ECS实例快速搭建一套LNMP环境。
背景知识
云服务器ECS
云服务器(Elastic Compute Service,简称ECS)是阿里云提供的性能卓越、稳定可靠、弹性扩展的IaaS(Infrastructure as a Service)级别云计算服务。云服务器ECS免去了您采购IT硬件的前期准备,让您像使用水、电、天然气等公共资源一样便捷、高效地使用服务器,实现计算资源的即开即用和弹性伸缩。阿里云ECS持续提供创新型服务器,解决多种业务需求,助力您的业务发展。
Nginx
Nginx是一款轻量级的Web服务器、反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好。
实验详情
连接ECS服务器
1.打开系统自带的终端工具。
- Windows:CMD或Powershell。
- MAC:Terminal。
2.在终端中输入连接命令ssh [username]@[ipaddress]
。您需要将其中的username和ipaddress替换为第1小节中创建的ECS服务器的登录名和公网地址。例如:
ssh root@123.123.123.123
命令显示结果如下:
3.输入yes。
4.同意继续后将会提示输入登录密码。 密码为已创建的云服务的ECS的登录密码。
登录成功后会显示如下信息。
安装并配置MySQL
1.执行如下命令,下载并安装MySQL官方的Yum Repository
。
wget -i 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
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
退出数据库。
安装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
,出现如下界面表示安装启动成功。
安装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环境配置成功。