当前位置: 首页 > news >正文

Linux中级の动静分离

Nginx动静分离基本概述

动静分离,通过中间件将动态请求和静态请求进行分离;
通过中间件将动态请求和静态请求分离,可以减少不必要的请求消耗,同时能减少请求的延时。动静分离只有好处:动静分离后,即使动态服务不可用,但静态资源不会受到影响。

Nginx动静分离场景实践

单台:
location / {root /code/wordpress;index.php;
}# 寻找图片等资源去本地的 /code/wordpress/images 寻找
location ~* \.(png|jpg|mp4|)${root /code/wordpress/images;gzip on;.....
}# 向本地数据库发送动态请求
location ~ \.php$ {fastcgi_pass 127.0.0.1:9000;.....
}

单台服务器实现动静分离(tomcat)

1.web01 下载 tomcat包
[root@web01 conf.d]# wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.113/bin/apache-tomcat-9.0.113.tar.gz --no-check-certificate2.解压
[root@web01 ~]# tar xf apache-tomcat-9.0.113.tar.gz -C /usr/local/3.创建软链接
[root@web01 ~]# ln -s /usr/local/apache-tomcat-9.0.113/ /usr/local/tomcat4.安装tomcat的运行环境
[root@web01 tomcat]# yum -y install java5.开启tomcat服务
[root@web01 tomcat]# sh /usr/local/tomcat/bin/startup.sh6.查看端口号
tcp6       0      0 :::8080                 :::*                    LISTEN      3917/java           Nginx实现代理tomcat进行图片拆分:
1.web01配置反向代理到自身的8080端口2.检测语法并重启Nginx服务3.本地进行hosts解析访问网站测试看是否成功4.本地proxy8080.conf进行图片资源(静态资源)分离配置(并重启服务)5.重新访问:图片不显示6.将tomcat服务图片拷贝到/code/images目录下
(tomcat服务图片/usr/local/tomcat/webapps/ROOT
)
[root@web01 ROOT]# cp *.png *.svg /code/images/7.重新访问网站

【1.web01配置反向代理到自身的8080端口】
image
【2.检测语法并重启Nginx服务】
image
【3.hosts解析访问测试】
image
【4.重新配置.conf文件】
image
【5.重新访问:图片不显示】
image
【6.将tomcat服务的图片放入到/code/images中去】
image
【7.重新访问:图片依然不显示】
【8.查看nginx错误日志】
image
image
【9.从错误中可以看出,我们没有权限访问/code/images/bg-middle.png】因此需要修改权限
image
【10.再次访问:图片显示】
image
【11.关闭tomcat服务】
image

通过负载均衡实现动静分离

1.配置web01的静态页面
2.创建相应的目录文件,并在/code/images下创建a.png文件
3.检测语法并重启Nginx服务
4.本地进行hosts解析,访问www.static.com/a.png测试5.配置web02的动态资源
6.负载均衡集成动态和静态页面
7.测试web02动态页面
http://10.0.0.8:8080/test.jsp
8.检查本地端口8080是否开启
9.负载均衡集成动态和静态页面

【1.配置web01 staic.conf文件】
image
【2.创建相应文件】
image
【3.检测语法并重启Nginx服务】
image
【4.访问测试】
image
【5.web02下载tomcat服务】(启动服务)
【6.配置web02动态资源】:vim /usr/local/tomcat/webapps/ROOT/test.jsp
image
【7.访问web02动态页面】:刷新数字会变
image
image
【8.检查本地端口8080是否开启】
image
【9.负载均衡集成动态和静态资源】
image
【10.创建集成目录代码】
image
【11.检查语法并重启Nginx服务】
【12.重新访问网页,可见web01的静态服务和web02的动态服务集中到一个页面了】进行hosts解析到LB服务器
image
image
【13.关闭web01的Nginx服务,再次访问测试】:图片不显示
image
【14.打开web01的Nginx服务,关闭web02的tomcat服务】
image
【15.重新访问】:动态随机数不显示
image

http://www.jsqmd.com/news/120457/

相关文章:

  • 儿童近视防控别踩坑!这样做,轻松帮孩子守住好视力
  • 21、内网安装软件
  • 2025年12月中国童装品牌调研:男生女生童装外套质量与品牌优势分析 - 品牌测评鉴赏家
  • Java毕设项目:基于springboot的养宠物指南服务平台系统的设计与实现(源码+文档,讲解、调试运行,定制等)
  • 无需训练数据即可控制语言生成模型的技术突破
  • Thinkphp和Laravel基于vue的体育户外运动装备网上商城vue
  • RT_Thread好用吗? RT_Thread成国内最成熟开源RTOS
  • 22、oracle导入数据,sys_user表数据错误
  • 12.9观看蓝桥杯心得
  • [学习资料] 什么是状态机?怎么设计MCU状态机
  • 挖到宝了!这些国产儿童鞋服品牌超绝 - 品牌测评鉴赏家
  • 【课程设计/毕业设计】基于springboot的演唱会购票系统的设计与实现,构建 “演出管理 - 票务销售 - 订单履约” 的全流程平台【附源码、数据库、万字文档】
  • 2025年线下儿童羽绒服选购指南:宝妈实测口碑品牌,这些细节决定质量好坏 - 品牌测评鉴赏家
  • 儿童鞋服选购经验分享:如何为孩子挑选合适的穿着? - 品牌测评鉴赏家
  • 23、他她它的区别
  • Thinkphp和Laravel+vue电子实验报告在线管理lw
  • Java计算机毕设之基于springboot+vue的食品仓库管理系统的设计与实现(完整前后端代码+说明文档+LW,调试定制等)
  • Leetcode-3780-Python
  • Gemini-3-Flash-Preview API调用示例:介绍+教程+国内使用大全
  • 24、数据库表,列顺序不一样,这么导入导出数据
  • 8个AI论文工具,助研究生高效完成毕业写作!
  • [G32R] 使用 vscode+cmake 开发 G32R501
  • Cursor编辑器的使用技巧
  • Thinkphp和Laravelpython桂平旅游管理系统vue
  • 2025.12.21总结
  • 升压芯片很简单(一),快速选择升压芯片+利用升压芯片设计LED电源
  • Thinkphp和Laravel冬奥会奥运会管理网站3.3vue
  • 【计算机毕业设计案例】基于SpringBoot的校园快递管理系统设计与实现基于springboot的校园智能物流管理系统的设计与实现(程序+文档+讲解+定制)
  • 2025年儿童羽绒服选购指南:这些品牌温暖又好穿 - 品牌测评鉴赏家
  • 零极点对消:原理、作用与风险