nginx的动静分离
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的动静分离相关推荐
- Docker构建Nginx+Tomcat动静分离架构
随着主流Nginx WEB服务器的发展,现在基于Nginx的WEB服务器已广泛应用于各大互联网企业.今天我们来使用docker构建我们的Linux+Nginx+Tomcat动静分离服务器. 1) ...
- nginx+tomcat动静分离结构
本文采用另一种策略对动静分离进行演示,它的大致结构如图 2 所示. 图 2. 本文设计的动静分离结构 在本文中,我们将静态资源放在 A 主机的一个目录上,将动态程序放在 B 主机上,同时在 A 上安装 ...
- tomcat 如何跳转到apache_第二十期:基于tomcat部署jforum站点,并结合nginx实现动静分离...
一. 基于tomcat部署站点,并nginx实现动静分离 1.1 Tomcat部署 1.1.1 配置jdk #二进制安装 #解压 [root@node2local]# tar -xzvf jdk ...
- Nginx——配置动静分离
Nginx的动静分离是把不同的资源放到不同的服务器中,动态资源可以放到tomcat中,而静态资源可以放到其他位置 所谓动静分离,是为了加快网站的解析速度,把动态页面和静态页面分别部署到不同的服务器上来 ...
- K8S高可用集群架构部署 dashborad插件部署 Nginx实现动静分离 K8S在线升级
K8S官方文档 注意:该集群每个master节点都默认由kubeadm生成了etcd容器,组成etcd集群.正常使用集群,etcd的集群不能超过一半为down状态. docker的namespace: ...
- 使用nginx实现动静分离的负载均衡集群
架构图 本次要实现的架构图: 工作中我们希望这样: 静态文件处理:可以使用nginx 或apache 动文件处理: apache ,tomcat 图片文件处理: squid 我们可以使用nginx实现 ...
- Nginx的动静分离实验
Nginx的动静分离实验 1.如何区分静态文件和动态文件? location中: expires 60d:静态资源–>可以缓存,不会向服务器去请求: proxy_pass:把请求转发给某个组 f ...
- nginx使用-动静分离
一.概念 Nginx 动静分离简单来说就是把动态跟静态请求分开,不能理解成只是单纯的把动态页面和静态页面物理分离.严格意义上说应该是动态请求跟静态请求分开,简单的可以理解成使用 Nginx处理静态页面 ...
- 【网络编程】利用Nginx实现动静分离--分离动态请求和静态请求(Nginx+Tomcat)
文章目录 一.什么是动静分离 1.1 动静分离原理 1.2 Nginx实现动静分离的优势 二.动静分离的实现 2.1 先了解一下location语法 2.1.1 nginx模块 2.1.2 Nginx ...
最新文章
- 2020年,你读到印象最深的论文是哪篇?
- Python+OpenCV 平移、旋转、缩放、翻转
- LeetCode算法题0:分发糖果【贪心算法】
- 贡献一个连jquery都觉的大的时候可以用的 js库
- MySQL Workbench的使用教程 (初级入门版)
- 将undefault和null的数据转换成bool类型的数据 使用!!
- java gui 打开另一个,java – 从另一个JFrame Gui访问vars
- C++课堂作业_02_PAT1025.反转链表
- [Teamcenter 2007 开发系列] web 非空验证
- 2020-08-27
- 软件选择,iDreamPiano、freepiano、EveryonePiano
- Kubernetes之YAML语法
- JAVA SE 003——数值
- python实现一种相似图片搜索算法
- 回收测试JInternalFrame
- [音乐] 逆转裁判第二季 OP『Nеvеr Losе』
- redis集群管理-5.0.14版本
- %3chtml%3e%3c html,403禁止%3Chtml%3E%3Chead%3E%3Cmeta笨
- 利用贝叶斯算法对垃圾邮件进行分类处理
- COOX平台(SCADA MES)