nginx配置实例-动静分离

一、什么是动静分离?

Nginx动静分离简单来说就是把动态跟静态请求分开,不能理解成只是单纯的把动态页面和静态页面物理分离。严格意义上说应该是动态请求跟静态请求分开,可以理解成使用Nginx处理静态页面,Tomcat处理动态页面,动静分离从目前实现角度来讲大致分为两种:

  1. 纯粹把静态文件独立成单独的域名,放在独立的服务器上,也是目前主流推崇的方案
  2. 动态跟静态文件混合在一起发布,通过nginx来分开

通过location指定不同的后缀名实现不同的请求转发,通过expires参数设置,可以使浏览器缓存过期时间,减少与服务器之间的请求和流量,具体Expires定义:是给一个资源设定一个过期时间,也就是说无需去服务端验证,直接通过浏览器自身确认是否过期即可,所以不会产生额外的流量。此种方法非常适合不经常变动的资源。(如果经常更新的文件,不建议使用Expires来缓存),我这里设置3d,表示在这3天之内访问这个URL,发送一个请求,对比服务器该文件最后更新时间没有变化,则不会从服务器抓取,返回状态码304,如果有修改,则直接从服务器重新下载,返回状态码200。

二、准备工作

  1. 在linux系统中准备静态资源,用于进行访问

在根目录下创建data1目录,然后在data1目录下创建html和image文件夹,在image文件夹下随便上传一个图片,在html文件夹中创建a.html,并添加如下内容:

c 复制代码
<h1> test html </h1>
  1. 更改nginx配置文件

启动nginx或者重新加载nginx

三、测试

  1. 浏览器输入地址
c 复制代码
http://192.168.206.128/image/hzw.jpg
  1. 在浏览器地址栏输入地址:
c 复制代码
http://192.168.206.128/html/a.html
相关推荐
trayvontang1 天前
Nginx之location配置
运维·nginx
代码or搬砖1 天前
Nginx详讲
运维·nginx·dubbo
Gavin在路上1 天前
dubbo源码之微服务治理的“隐形遥控器”——QOS 机制解析
微服务·架构·dubbo
sylvia_08151 天前
git add 后pull 放弃本地所有修改
git
五阿哥永琪1 天前
Git 开发常用命令速查手册
大数据·git·elasticsearch
Evan芙1 天前
Nginx 平滑升级
数据库·nginx·ubuntu
柒壹漆1 天前
用Python制作一个USB Hid设备数据收发测试工具
开发语言·git·python
爱吃番茄鼠骗1 天前
git命令使用教程
git
黑牛先生1 天前
【Git】解决远程仓库备注错误问题
git
rockmelodies1 天前
Git冲突解决实用指南
git·git冲突