使用nginx实现动静分离「建议收藏」

使用nginx实现动静分离「建议收藏」一、什么是动静分离动静分离是指在web服务器架构中,将静态页面与动态页面或者静态内容接口和动态内容接口分开不同系统访问的架构设计方法,进而提升整个服务访问性能和可维护性。nginx的动静分离,指的是由nginx将客户端请求进行分类转发,静态资源请求(如html、css、图片等)由静态资源服务器处理,动态资源请求(如jsp页面、servlet程序等)由tomcat服务器处理,tomcat本身是用来处理动态资源的,同时tomcat也能处理静态资源,但是tomcat本身处理静态资源的

大家好,又见面了,我是你们的朋友全栈君。

一、什么是动静分离

动静分离是指在web服务器架构中,将静态页面与动态页面或者静态内容接口和动态内容接口分开不同系统访问的架构设计方法,进而提升整个服务访问性能和可维护性。

nginx 的动静分离,指的是由 nginx 将客户端请求进行分类转发,静态资源请求(如html、css、图片等)由静态资源服务器处理,动态资源请求(如 jsp页面、servlet程序等)由 tomcat 服务器处理,tomcat 本身是用来处理动态资源的,同时 tomcat 也能处理静态资源,但是 tomcat 本身处理静态资源的效率并不高,而且还会带来额外的资源开销。利用 nginx 实现动静分离的架构,能够让 tomcat 专注于处理动态资源,静态资源统一由静态资源服务器处理,从而提升整个服务系统的性能 。

使用nginx实现动静分离「建议收藏」

二、使用nginx实现动静分离

案例:
在Windows浏览器中输入 192.168.1.103/jsp/hello.jsp,跳转到提前准备好的 jsp 页面,这个动态资源请求是有tomcat服务器处理的;输入 192.168.1.103/image/pika.jpg,跳转到提前准备好的图片,这个静态资源请求是由 linux 主机处理的;输入 192.168.1.103/page/a.html,跳转到提前准备好的 html 页面,这个静态资源请求是由 linux 主机处理的。

(1)准备工作
① 在 linux 根目录下新建 static 目录,并在此目录下分别新建 image 目录和 page 目录,在 image 目录中放入准备好的图片 pika.jpg,在 page 目录中放入准备好的页面 a.html
② 在 tomcat 下的 webapps 目录下 新建 jsp 目录,在 jsp 目录中放入提前准备好的页面 hello.jsp
③ 关闭 linux 系统的防火墙或者开放需要被访问的端口

(2)具体配置
① 修改 linux 系统中nginx的配置文件 nginx.conf,默认在 /usr/local/nginx/conf 目录下。
将配置文件中server块的内容修改成如下形式:

使用nginx实现动静分离「建议收藏」

 ② 保存修改并启动 nginx ,在Windows浏览器中输入相应请求地址,测试成功的结果如下所示:

<1> 访问 192.168.1.103/jsp/hello.jsp
使用nginx实现动静分离「建议收藏」

<2> 访问 192.168.1.103/image/pika.jpg
使用nginx实现动静分离「建议收藏」

<3> 访问 192.168.1.103/page/a.html使用nginx实现动静分离「建议收藏」

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/133245.html原文链接:https://javaforall.net

(0)
上一篇 2022年5月1日 下午4:40
下一篇 2022年5月1日 下午5:00


相关推荐

  • php递归算法计算n 介乘,递归算法示例——计算N的阶乘「建议收藏」

    php递归算法计算n 介乘,递归算法示例——计算N的阶乘「建议收藏」递归算法,也就是调用方法自身。阶乘算法,N的阶乘为N*(N-1)*…*2*1,1的阶乘是1。下面是示例的代码:packagecom.cqit.edu.test;importjava.util.Scanner;/***@author肖德俊*@versionDec9,20086:02:55PM*/publicclassUseself{/***@paramargs*/pub…

    2022年8月11日
    11
  • snmpwalk 安装与使用详解

    snmpwalk 安装与使用详解nbsp nbsp nbsp snmpwalk 是 SNMP 的一个工具 它使用 SNMP 的 GETNEXT 请求查询指定 OID SNMP 协议中的对象标识 入口的所有 OID 树信息 并显示给用户 通过 snmpwalk 也可以查看支持 SNMP 协议 可网管 的设备的一些其他信息 比如 cisco 交换机或路由器 IP 地址 内存使用率等 也可用来协助开发 SNMP 功能 nbsp 在日常监控中 经常会用到 snmp 服务 而 snmpwalk 命令则是采集系统

    2026年3月20日
    2
  • C Func<>委托

    C Func<>委托以前我们为了能够调用一个方法 必须比照这个方法定义一个相应的 delegate 原先我们定义 delegate 委托声明定义一个签名 delegatedoub doublenum classDelegat 符合委托声明的常规方法 staticdouble doublei

    2026年3月19日
    2
  • StringUtils.isNotEmpty 等方法

    StringUtils.isNotEmpty 等方法StringUtils 方法的操作对象是 java lang String 类型的对象 是 JDK 提供的 String 类型操作方法的补充 并且是 null 安全的 即如果输入参数 String 为 null 则不会抛出 NullPointerE 而是做了相应处理 例如 如果输入为 null 则返回也是 null 等 具体可以查看源代码 除了构造器 StringUtils 中一共有 130 多个方法 并且都是 stati

    2026年3月17日
    2
  • chown和chmod命令用法_chown和chmod的作用

    chown和chmod命令用法_chown和chmod的作用1、chown用法作用:用来更改某个目录或文件的用户名和用户组的格式:chown用户名:组名文件路径(可以是就对路径也可以是相对路径)例1:chownroot:root/tmp/tmp1就是把tmp下的tmp1的用户名和用户组改成root和root(只修改了tmp1的属组).例2:chown-Rroot:root/tmp/tmp1就是把tmp下的tmp1下的所有文件的属组都改成roo…

    2022年10月20日
    4
  • android attributeset 工具类,android attributeset总结

    android attributeset 工具类,android attributeset总结一般是当项目中遇到这样的场景需要自定义控件的 AttributeSet 属性 一个自定义控件的有些属性内容是随着外部条件而动态改变的 forexample 一个自定义的 ListView 控件 需要在底部添加一个 View 而这个 View 在不同的模块使用中传入的 View 是不同的 这时候有两种方法 一种方法就是在自定义 ListView 控件类中提供一个公开的接口给外部调用从而将 View 动态的传入进去 另外一种

    2026年3月19日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号