nginx的动静分离

nginx动静分离的原理

nginx的动静分离,指的是由nginx服务器对用户的请求进行分类转发,静态资源(html,css,js,images)由静态资源服务器处理(nginx服务器),动态资源(jsp,serverlet)由动态资源服务器(tomcat)处理,tomcat本来使用来处理动态资源的,同时tomcat也可以处理静态资源,但是tomcat处理静态资源的效率不高,还会带来额外的资源开销。利用nginx动静分离的架构,能够让 tomcat 专注于处理动态资源,静态资源统一由静态资源服务器处理,从而提升整个服务系统的性能 。

nginx动静分离配置

服务器规划
服务器 IP地址 存储文件
nginx 192.168.10.27 css js images
tomcat 192.168.10.28 jsp
1、配置nginx服务器将静态资源存放到nginx服务器中

进入/usr/local/nginx/html目录下 创建存放静态资源的文件夹

mkdir static

cd static

传入一张png照片

2、nginx关于静态资源的配置

进入/usr/local/nginx/conf 配置nginx.conf

在默认server块写入
location ~*/(js|css|png|image) {            # 正则表达式配对静态文件资源root /usr/local/nginx/html/static/;   #静态资源的目录autoindex on;
}

在浏览器中输入192.168.10.27/static/test.png测试静态资源是否能被访问

3、tomcat配置动态资源
进入tomcat的路径 /opt/tomcat/webapps/ROOT
删除index.jsp的全部内容 将测试页面访问次数的jsp代码写入index.jsp中 代码如下:<%@ page contentType="text/html; charset=UTF-8"  %>
<%
Object obj =application.getAttribute("counter");
if(obj==null){application.setAttribute("counter", new Integer(1));out.print("该页面已被访问1次!");
}else{int count=Integer.parseInt(obj.toString());count++;out.print("该页面被访问了"+count+"次!");application.setAttribute("counter", count);
}%>保存后退出
4、nginx关于动态资源的配置

进入/usr/local/nginx/conf 配置nginx.conf

在默认server块写入
location / {proxy_pass http://192.168.10.28:8080;}

在浏览器写入http://192.168.10.27/index.jsp测试动态资源是否能被访问

测试成功

server块代码如下:

    server {listen       80;server_name  localhost;location ~*/(js|css|png|image) {root /usr/local/nginx/html/static/;autoindex on;}location / {proxy_pass http://192.168.10.28:8080;}   }

nginx的动静分离相关推荐

  1. Docker构建Nginx+Tomcat动静分离架构

    随着主流Nginx WEB服务器的发展,现在基于Nginx的WEB服务器已广泛应用于各大互联网企业.今天我们来使用docker构建我们的Linux+Nginx+Tomcat动静分离服务器. 1)    ...

  2. nginx+tomcat动静分离结构

    本文采用另一种策略对动静分离进行演示,它的大致结构如图 2 所示. 图 2. 本文设计的动静分离结构 在本文中,我们将静态资源放在 A 主机的一个目录上,将动态程序放在 B 主机上,同时在 A 上安装 ...

  3. tomcat 如何跳转到apache_第二十期:基于tomcat部署jforum站点,并结合nginx实现动静分离...

    一.  基于tomcat部署站点,并nginx实现动静分离 1.1  Tomcat部署 1.1.1  配置jdk #二进制安装 #解压 [root@node2local]# tar -xzvf jdk ...

  4. Nginx——配置动静分离

    Nginx的动静分离是把不同的资源放到不同的服务器中,动态资源可以放到tomcat中,而静态资源可以放到其他位置 所谓动静分离,是为了加快网站的解析速度,把动态页面和静态页面分别部署到不同的服务器上来 ...

  5. K8S高可用集群架构部署 dashborad插件部署 Nginx实现动静分离 K8S在线升级

    K8S官方文档 注意:该集群每个master节点都默认由kubeadm生成了etcd容器,组成etcd集群.正常使用集群,etcd的集群不能超过一半为down状态. docker的namespace: ...

  6. 使用nginx实现动静分离的负载均衡集群

    架构图 本次要实现的架构图: 工作中我们希望这样: 静态文件处理:可以使用nginx 或apache 动文件处理: apache ,tomcat 图片文件处理: squid 我们可以使用nginx实现 ...

  7. Nginx的动静分离实验

    Nginx的动静分离实验 1.如何区分静态文件和动态文件? location中: expires 60d:静态资源–>可以缓存,不会向服务器去请求: proxy_pass:把请求转发给某个组 f ...

  8. nginx使用-动静分离

    一.概念 Nginx 动静分离简单来说就是把动态跟静态请求分开,不能理解成只是单纯的把动态页面和静态页面物理分离.严格意义上说应该是动态请求跟静态请求分开,简单的可以理解成使用 Nginx处理静态页面 ...

  9. 【网络编程】利用Nginx实现动静分离--分离动态请求和静态请求(Nginx+Tomcat)

    文章目录 一.什么是动静分离 1.1 动静分离原理 1.2 Nginx实现动静分离的优势 二.动静分离的实现 2.1 先了解一下location语法 2.1.1 nginx模块 2.1.2 Nginx ...

最新文章

  1. 2020年,你读到印象最深的论文是哪篇?
  2. Python+OpenCV 平移、旋转、缩放、翻转
  3. LeetCode算法题0:分发糖果【贪心算法】
  4. 贡献一个连jquery都觉的大的时候可以用的 js库
  5. MySQL Workbench的使用教程 (初级入门版)
  6. 将undefault和null的数据转换成bool类型的数据 使用!!
  7. java gui 打开另一个,java – 从另一个JFrame Gui访问vars
  8. C++课堂作业_02_PAT1025.反转链表
  9. [Teamcenter 2007 开发系列] web 非空验证
  10. 2020-08-27
  11. 软件选择,iDreamPiano、freepiano、EveryonePiano
  12. Kubernetes之YAML语法
  13. JAVA SE 003——数值
  14. python实现一种相似图片搜索算法
  15. 回收测试JInternalFrame
  16. [音乐] 逆转裁判第二季 OP『Nеvеr Losе』
  17. redis集群管理-5.0.14版本
  18. %3chtml%3e%3c html,403禁止%3Chtml%3E%3Chead%3E%3Cmeta笨
  19. 利用贝叶斯算法对垃圾邮件进行分类处理
  20. COOX平台(SCADA MES)

热门文章

  1. VOLTE/VOWIFI/VOIP的区别
  2. JAVA设计模式之(九)门面模式(外观模式)
  3. 基于RNN自编码器的离群点检测
  4. Gurobi过期了怎么办
  5. 燕尾槽刀具如何加工设置
  6. 【Visual C++】游戏开发笔记四十七 浅墨DirectX教程十五 翱翔于三维世界:摄像机的实现
  7. Springboot集成elasticsearch 使用IK+拼音分词
  8. c语言程序设计CDIO,基于CDIO理论C语言程序设计课程改革.doc
  9. 10款PHP开源的电子商务管理系统
  10. ChatGPT 一分钟教你做出非常炫酷的PPT