Nginx如何实现动静分离

Nginx的介绍

Nginx引擎(x)是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务.Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。

其将源代码以类BSD许可证的形式发布,因它的稳定性,丰富的功能集,示例配置文件和低系统资源的消耗而闻名.2011年6月1日,Nginx 1.0.4发布。

Nginx是一款轻量级的web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like协议下发行。其特点是占有内存少,并发能力强,事实上Nginx的并发能力在同类型的网页服务器中表现较好

Nginx的优点

Nginx可以在大多数UnixLinux OS上编译运行,并有窗户移植版。Nginx的1.4.0稳定版已经于2013年4月24日发布,一般情况下,对于新建站点,建议使用最新稳定版作为生产版本,已有站点的升级急迫性不高。

Nginx的源代码使用2-clause BSD-like许可证。

Nginx是一个很强大的高性能的web和反向代理服务,它具有很多非常优越的特性:

在连接高并发的情况下,Nginx是Apache服务不错的替代品:Nginx在美国是做虚拟主机生意的老板们经常选择的软件平台之一。能够支持高达50000个并发连接数的响应,感谢Nginx为我们选择了epoll和kqueue作为开发模型。

一、动静分离的简介

Nginx的静态处理能力很强,常用处理静态请求,但是动态处理能力不足,因此,在企业中常用动静态分离技术。
针对PHP的动静分离,静态页面交给Nginx处理,动态页面交给PHP-FPM模块或Apache处理
在Nginx的配置中,是通过位置配置段配合正则匹配实现静态与动态页面的不同处理方式。
二,反向代理原理
Nginx不仅能作为web服务器,还具有反向代理,负载均衡和缓存的功能。
Nginx通过代理模块实现将客户端的请求代理至上游服务器,此时Nginx与上游服务器的连接是通过HTTP协,,,议进行的。
nginx在实现反向代理功能时的最重要指令为:proxy_pass它的处理逻辑将用户请求调度至上游服务器。
三,配置实验
3.1,实验要求
根据企业需要,将配置nginx实现动静分离,对PHP页面的请求转发给灯处理,而静态页面交给nginx处理,以实现动静分离。
3.2,环境准备
准备两台centos虚拟机,第一台已经搭建好nginx配置,第二台用于搭建灯平台。
3.3,架构灯
1,安装http、关闭防火墙
systemctl停止firewalld
setenfoce 0
yum安装httpd httpd-devel - y
#开启服务
systemctl启动httpd
2,安装数据库MySQL,并开启服务
#安装mariadb(简单,快捷,轻量级别的,安装便利)数据库
yum安装mariadb mariadb-server mariadb-libs mariadb-devel - y
#启动mariadb
systemctl mariadb开始。服务
#过滤看下
netstat -anpt | grep 3306
给MySQL数据库设置密码,进行数据库配置
mysql_secure_installstion
#回车
#给根设置密码:abc123
#回车
#会显示删除anonymouns用户(匿名用户)→N
#回车
#不允许root登录远程(是否拒绝根远程登陆)→N
#回车
#删除测试数据库和访问它(是否删除测试数据库)→N
#回车
#重载pricilegs现在表(是否重新加载权限列表)→Y
4,安装php,建立php和mysql关联
#安装php
yum安装php - Y
#安装(建立php和mysql)关联插件
yum安装php mysql - Y
5,安php插装件
#安php插装件
yum安装- Y php-gd php-ldap php odbc php-pear php xml php-xmlrpc php-mbstring php-snmp php-soap curl curl-devel php-bcmath
6,新建php网页内容文件
cd/var/www/html
mv指数。html索引。php
vim index . php
& lt; ?php
,呼应“这是apache web"
?在
7日重启服务,在‘nginx的浏览器中输入,192.168.111.141/索引。php
#再重启服务
systemctl启动httpd。服务
systemctl重启mariadb
3.4,架构Nginx的静态分离
Nginx的安装已经提前配置好了,需要的可以看上一篇博客,链接为:Nginx的配置
1,修改Nginx的配置文件,将PHP文件请求转发到Apache处理。
vim/usr/local/nginx/conf/nginx.参看
2,重启nginx服务
服务nginx重启
3,在nginx的浏览器中访问网站:192.168.111.139/索引。php,验证
。,php是动态请求,html是静态请求。
。,如果是静态请求,Nginx直接进行处理,若是动态请求,Nginx自动将动态请求转发给Apache处理。
访问网站:192.168.111.139/index . html

灯平台:192.168.111.141

Nginx平台:192.168.111.139

 Nginx如何实现动静分离

Nginx如何实现动静分离