1.什么是动静分离

将动态请求和静态请求区分访问

2.为什么要做动静分离

tomcat本身处理静态效率不高,还会带来资源开销.所以使用动静分离,将静态由Nginx处理, 动态由PHP处理或Tomcat处理

3.如何实现动静分离

  • Nginx根据客户端请求的url来判断请求的是否是静态资源,如果请求的url包含jpg、png,则由Nginx处理。
  • 如果请求的url是.php或者.jsp等等,这个时候这个请求是动态的,将转发给tomcat处理
总结来说,Nginx是通过url来区分请求的类型,并转发给不同的服务端

我搭建的Nginx是反向代理负载均衡模式,所以把静态文件都存放在Nginx代理服务器上:

首先在Nginx安装目录下创建一个存放静态文件的文件夹:

#创建静态文件存储目录
mkdir /opt/nginx/static

编辑nginx配置文件

#找到nginx的配置文件
cd /opt/nginx/conf #编辑配置文件
vi nginx.conf

找到server标签,内部添加动静分离配置:

在server标签内部添加如下配置信息:

#通过url判断如下后缀为静态文件,并转至静态文件路径获取文件
location ~ .*\.(html|htm|gif|jpg|jpeg|bmp|png|ico|txt|js|css)$
{
#某用户下的 静态文件路径
root /opt/nginx/static/;
#缓存有效期 30d = 30天,也可以去掉
expires 30d;
}

重启Nginx

#切换到nginx目录下
cd /opt/nginx #进入操作命令文件夹
cd /sbin #重启
./nginx -s reload

 

完成!

最新文章

  1. Djago模板拾起
  2. WAMPSERVER PHP版本5.3的降到 5.2?
  3. 用adox 取 access 自增列
  4. netbeans设置语言
  5. 【BZOJ-4524】伪光滑数 堆 + 贪心 (暴力) [可持久化可并堆 + DP]
  6. Memcached 笔记与总结(9)Memcached 与 Session
  7. ASP.Net4.0中新增23项功能
  8. HDOJ(HDU) 2137 circumgyrate the string(此题用Java-AC不过!坑)
  9. Dojo实现Tabs页报错(三)
  10. schema change + ogg 变更手册
  11. JS代码备忘
  12. setfacl命令 来自: http://man.linuxde.net/setfacl
  13. 用Qemu运行/调试arm linux【转】
  14. Serpent.AI – 游戏代理框架(Python)
  15. 【POI每日题解 #6】KRA-The Disks
  16. nginx发布静态网页
  17. 《Python程序设计(第3版)》[美] 约翰·策勒(John Zelle) 第 2 章 答案
  18. python urlretrieve 下载图片
  19. 火狐浏览器下,td 直接使用position:relative;和background:;产生的边框消失问题
  20. json test

热门文章

  1. Linux 发行版本介绍
  2. TB6560步进电机驱动板
  3. Web前端自动化测试Cypress实践总结
  4. 车载智能HUD
  5. AI+IoT+电池应用
  6. CVPR2020:利用图像投票增强点云中的三维目标检测(ImVoteNet)
  7. zookeeper分布式锁,解决了羊群效应, 真正的zookeeper 分布式锁
  8. Java IO学习笔记二:DirectByteBuffer与HeapByteBuffer
  9. JMeter执行方式
  10. Docker开启安全的TLS远程连接