Nginx实现 动静分离

文章目录

1、动静分离的简介

2、反向代理原理

3、配置实验

3.一、实验要求

3.二、环境准备

3.三、架构LAMP

3.四、架构Nginx的静态分离

4、实验总结

1、动静分离的简介

. Nginx 的静态处理能力很强,经常使用处理静态请求,可是动态处理能力不足,所以,在企业中经常使用动静态分离技术。

. 针对 PHP 的动静分离,静态页面交给Nginx 处理,动态页面交给PHP-FPM模块或 Apache处理

. 在Nginx的配置中,是经过location 配置段配合正则匹配实现静态与动态页面的不一样处理方式。

2、反向代理原理

. Nginx 不只能做为 Web服务器,还具备反向代理、负载均衡和缓存的功能。

. Nginx 经过 proxy模块实现将客户端的请求代理至上游服务器,此时nginx与上游服务器的链接是经过http协 议进行的。

. nginx 在实现反向代理功能时的最重要指令为:proxy_pass 它的处理逻辑将用户请求调度至上游服务器。

3、配置实验

3.一、实验要求

根据企业须要,将配置nginx 实现动静分离,对PHP页面的请求转发给LAMP 处理,而静态页面交给 nginx处理,以实现动静分离。

3.二、环境准备

准备两台centos虚拟机,第一台已经搭建好 Nginx配置,第二台用于搭建 LAMP平台。

LAMP平台:192.168.111.141php

Nginx平台:192.168.111.139html

3.三、架构LAMP

一、安装 http,关闭防火墙

systemctl stop firewalld
setenfoce 0

yum install httpd httpd-devel -y

#开启服务
systemctl start httpd

二、安装数据库MySQL,并开启服务

#安装 mariadb(简单,快捷,轻量级别的,安装便利)数据库
yum install mariadb mariadb-server mariadb-libs mariadb-devel -y

#启动 mariadb
systemctl start mariadb.service

#过滤看下
netstat -anpt | grep 3306

三、给MySQL数据库设置密码,进行数据库配置

mysql_secure_installstion 
#回车
#给root 设置密码:abc123
#回车 
#会显示Remove anonymouns users(匿名用户)-> N
#回车
#Disallow root login remotely(是否拒绝root远程登录)-> N
#回车
#Remove test database and access to it(是否删除测试数据库)->N
#回车
#Reload pricilegs tables now(是否从新加载权限列表)-> Y

Nginx实现 动静分离

Nginx实现 动静分离

四、安装 php ,创建php和mysql关联

#安装php
yum install php -y

#安装 (创建php和mysql)关联插件
yum install php-mysql -y

五、安装php插件

#安装php插件
yum install -y php-gd php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-snmp php-soap curl curl-devel php-bcmath

六、新建PHP网页内容文件

cd /var/www/html

mv index.html index.php

vim index.php
<?php
  echo "this is apache web";
?>

七、重启服务,在 ‘ nginx ’ 的浏览器中输入 192.168.111.141/index.php

#再重启服务
systemctl restart httpd.service
systemctl restart mariadb

Nginx实现 动静分离

3.四、架构Nginx的静态分离

nginx的安装已经提早配置好了,须要的能够看上一篇博客,连接为:Nginx 的配置

一、修改 Nginx 的配置文件,将PHP文件请求转发到 Apache 处理。

vim /usr/local/nginx/conf/nginx.conf

Nginx实现 动静分离

二、重启nginx服务

service nginx restart

三、在nginx的浏览器中访问网站:192.168.111.139/index.php 验证

Nginx实现 动静分离

. php是动态请求, html是静态请求。

. 若是是静态请求,Nginx直接进行处理,如果动态请求,nginx自动将动态请求转发给Apache处理。

访问网站:192.168.111.139/index.html

Nginx实现 动静分离

4、实验总结

一、LAMP架构的yum安装,配置php页面

二、Nginx的安装

三、Nginx开启反向代理功能

四、用静态请求和动态请求验证明验

相关文章
相关标签/搜索