首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用Tomcat启用静态内容(images,css,js)的浏览器缓存?

要使用Tomcat启用静态内容的浏览器缓存,可以通过配置Tomcat的web.xml文件来实现。以下是具体步骤:

  1. 打开Tomcat安装目录下的conf文件夹,找到web.xml文件。
  2. 在web.xml文件中找到以下配置块:
代码语言:xml
复制
<!-- Default servlet -->
<servlet>
    <servlet-name>default</servlet-name>
    <servlet-class>org.apache.catalina.servlets.DefaultServlet</servlet-class>
    <init-param>
        <param-name>debug</param-name>
        <param-value>0</param-value>
    </init-param>
    <init-param>
        <param-name>listings</param-name>
        <param-value>false</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>
  1. 在该配置块中添加以下内容:
代码语言:xml
复制
<!-- Enable browser caching for static content -->
<init-param>
    <param-name>cacheControl</param-name>
    <param-value>max-age=3600, public</param-value>
</init-param>

这将启用浏览器缓存,并设置缓存时间为3600秒(1小时)。

  1. 保存web.xml文件并重新启动Tomcat服务器。

现在,Tomcat将在响应静态内容(如images、css、js文件)时发送适当的缓存头,告诉浏览器缓存这些文件。浏览器将根据缓存头信息来判断是否从缓存中加载文件,从而提高页面加载速度和性能。

注意:以上步骤是基于Tomcat 8及以上版本的配置。对于较旧的Tomcat版本,可能需要使用其他方式来启用浏览器缓存。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

使用 Nginx 提升网站访问速度

静态文件处理 通过正则表达式,我们可让 Nginx 识别出各种静态文件,例如 images 路径下所有请求可以写为: location ~ ^/images/ { root /opt/webapp...(htm|html|gif|jpg|jpeg|png|bmp|ico|css|js|txt)$ { root /opt/webapp; expires 24h; } 对于例如图片、静态 HTML...文件、js 脚本文件和 css 样式文件等,我们希望 Nginx 直接处理并返回给浏览器,这样可以大大加快网页浏览时速度。...因此对于这类文件我们需要通过 root 指令来指定文件存放路径,同时因为这类文件并不常修改,通过 expires 指令来控制其在浏览器缓存,以减少不必要请求。...前面的配置示例中,我们首先定义了由 Nginx 直接处理一些静态文件请求后,其他所有的请求通过 proxy_pass 指令传送给后端服务器(在上述例子中是 Tomcat)。

2.4K80

Nginx动静分离

动态页面与静态页面区别 静态资源(cssjsimages、html等): 当用户多次访问这个资源,资源源代码永远不会改变资源。...(如:css、html、jpg、js等等文件),这些不需要经过后台处理文件称为静态文件,否则动态文件。...这里我们将静态资源放到nginx中,动态资源转发到tomcat服务器中。 因此,动态资源转发到tomcat服务器我们就使用到了前面讲到反向代理了。...一些问题 为什么互联网公司项目中,静态资源url后面会加上一个时间戳?他作用:控制缓存 目的:最终目的是为了控制项目上线时候,新静态资源与老浏览器缓存静态资源避免冲突问题。...解决办法:加上时间戳规范t = 项目上线 304走本地缓存状态码原理: 默认浏览器图片缓存是7天。

80330

用程序实现HTTP压缩和缓存

园子里已经有很多文章介绍了如何在IIS里开启压缩和缓存,但我想搞清楚该如何自己写代码来实现http压缩或者缓存,这样做原因主要有下面两点: 1.IIS版本不同,启用IIShttp压缩方式也不同,...实现缓存:通过在responseheader中加入ETag、Expires或LastModified,即可启用浏览器缓存。...实现缓存缓存文件包括jscss、图片等静态文件。我在上面已经提到了,要使浏览器能够缓存这些文件,需要在responseheader中加入相应标记。...到这里,缓存实现可以说已经完成了,但总觉得还有个问题很纠结,那就是在修改cssjs之后,如何更新缓存?...让我们来看一下如何使用这两类。 首先要清楚是我们要压缩是文本内容,例如cssjs以及View(aspx),图片不需要压缩。

2K20

Nginx---动静分离

那么如何使用Nginx接收用户请求并把请求转发到后台web服务器?...步骤分析: 1.准备Tomcat环境,并在Tomcat上部署一个web项目 2.准备Nginx环境,使用Nginx接收请求,并把请求分发到Tomat上 环境准备(Tomcat) 浏览器访问: http:...动:后台应用程序业务处理 静:网站静态资源(html,javaScript,css,images等文件) 分离:将两者进行分开部署访问,提供用户进行访问。...举例说明就是以后所有和静态资源相关内容都交给Nginx来部署访问,非静态内容则交个类似于Tomcat服务器来部署访问。 为什么要动静分离? ​...后服务器宕机了,我们再次访问Nginx,会得到如下效果,用户还是能看到页面,只是缺失了访问次数统计,这就是前后端耦合度降低效果,并且整个请求只和后服务器交互了一次,jsimages都直接从Nginx

52410

使用 Nginx 配置jsp服务器

静态文件 处理 通过正则表达式,我们可让 Nginx 识别出各种静态文件,例如 images 路径下所有请求可以写为: location ~ ^/images/ { root /opt/webapp...(htm|html|gif|jpg|jpeg|png|bmp|ico|css|js|txt)$ { root /opt/webapp; expires 24h; } 对于例如图片、静态...HTML 文件、js 脚本文件和 css 样式文件等,我们希望 Nginx 直接处理并返回给浏览器,这样可以大大加快网页浏览时速度。...因此对于这类文件我们需要通过 root 指令来指定文件存放路径,同时因为这类文件并不常修改,通过 expires 指令来控制其在浏览器缓存,以减少不必要请求。...前面的配置示例中,我们首先定义了由 Nginx 直接处理一些静态文件请求后,其他所有的请求通过 proxy_pass 指令传送给后端服务器(在上述例子中是 Tomcat)。

2.8K00

Linux使用Nginx配置jsp服务器操作命令

静态文件 处理 通过正则表达式,我们可让 Nginx 识别出各种静态文件,例如 images 路径下所有请求可以写为: location ~ ^/images/ { root /opt/webapp...(htm|html|gif|jpg|jpeg|png|bmp|ico|css|js|txt)$ { root /opt/webapp; expires 24h; } 对于例如图片、静态...HTML 文件、js 脚本文件和 css 样式文件等,我们希望 Nginx 直接处理并返回给浏览器,这样可以大大加快网页浏览时速度。...因此对于这类文件我们需要通过 root 指令来指定文件存放路径,同时因为这类文件并不常修改,通过 expires 指令来控制其在浏览器缓存,以减少不必要请求。...前面的配置示例中,我们首先定义了由 Nginx 直接处理一些静态文件请求后,其他所有的请求通过 proxy_pass 指令传送给后端服务器(在上述例子中是 Tomcat)。

1.7K00

WordPress缓存插件WP Fastest Cache插件使用教程

在 WordPress 情况下,一般来说,由于您网站上有很多文件和动态内容缓存插件会生成您网站静态 HTML 版本并将其存储以备将来使用。...免费版足以加速您网站,但在高级版中还有额外功能,例如缩小 Html、缩小CSS启用 Gzip 压缩、利用浏览器缓存、添加过期标题等等。...您可能知道,当您访问网站时,您 Web 浏览器会在临时文件夹中保存和重复使用图像、CSS、Javascript 和其他静态文件。...2、删除缓存   手动删除缓存是一项高级功能,只有购买插件商业版才能使用启用后,它允许您刷新缓存以及缩小 CSS/JS 文件。...您还可以从查看缓存页面以及Cookies、JSCSS文件中排除特定用户代理。 6、CDN 设置   CDN 选项卡用于配置缓存以与内容交付网络一起使用

6.5K30

从0到1开发Chrome插件

前言 Chrome 插件是我们经常用到,比如广告屏蔽,浏览器美化,访问国外网站等。但是你有想过 Chrome 插件是如何开发吗?...关于 Chrome 插件 Chrome 插件开发官方文档 Chrome 是由 html、jscss静态文件等组成文件集合。...插件全貌 images 中存放了插件 logo 等静态资源。 jquery 暂时预留,你可以将 jscss 等文件放在根目录,也可以将其放置到自定义文件中,区别只是使用时路径不一样。...插件导入 打开浏览器开发者模式 导入插件 插件效果 访问哔哩哔哩 浏览器打开:https://www.bilibili.com/ 你会发现哔哩哔哩网站 title 已经被打印出来了。...启用插件后 百度首页搜索按钮“百度一下“为红色,大小较大。 至此,我们 Chrome 插件从 0 到 1 就成功结束了。

1.6K30

Nginx学习之Nginx实战(二)

不需要依赖容器比如css/js或者图片等,这类就叫静 静态资源类型 在Nginxconf目录下,有一个mime.types文件 用户访问一个网站,然后从服务器端获取相应资源通过浏览器进行解析渲染最后展示给用户...,而服务端可以返回各种类型内容,比如xml、jpg、png、gif、flash、MP4、html、css等等,那么浏览器就是根据mime-type来决定用什么形式来展示 服务器返回资源给到浏览器时...; 第二个,其实静态文件有一个特点就是基本上变化不大,所以动静分离以后我们可以对静态文件进行缓存、或者压缩提高网站性能 缓存 当一个客户端请求web服务器, 请求内容可以从以下几个地方获取:服务器、...(jpg|jpeg|gif|bmp|png|js|css|ico)$ { root static; expires 1d; } 压缩 Gzip 我们一个网站一定会包含很多静态文件,比如图片...、脚本、样式等等,而这些css/js可能本身会比较大,那么在网络传输时候就会比较慢,从而导致网站渲染速度。

56620

使用ETag和Expires调优web服务器性能

Nginx中针配置Etag和Expires,有效缓存静态css/js/pic/页面/流媒体等文件。...在这个时间段里,该文件请求都将直接通过缓存服务器获取, 当然如果需要忽略浏览器刷新请求(F5),缓存服务器squid还需要使用 refresh_pattern 选项来忽略该请求 refresh_pattern...(js|css)?$ { expires 1h; } 这类文件并不常修改,通过 expires 指令来控制其在浏览器缓存,以减少不必要请求。...inode作为Etag etag.use-mtime: 是否使用文件修改时间作为Etag etag.use-size: 是否使用文件大小作为Etag static-file.etags: 是否启用Etag...功能 第四个参数肯定是要enable, 前面三个就看实际需要来选吧,推荐使用修改时间 B.3、 Nginx Etag Nginx中默认没有添加对Etag标识.Igor Sysoev观点”在对静态文件处理上看不出如何

92420

《前端运维》二、Nginx--3静态资源服务、跨域与其他

一、静态资源服务   首先,静态资源一般是指客户端发送请求到Web服务器,web服务器从内存中取得相应文件,返回给客户端,客户端解析并渲染出来。...一般静态资源有:HTML、CSSJS、JPEG、PNG、MPEG、Word、EXCEL等。   CDN全称是Content Delivery Network,即内容分发网络。...其目的是使用户可就近取得所需内容,解决 Internet网络拥挤状况,提高用户访问网站响应速度。 一、配置语法 1、sendfile   不经过用户内核发送文件。...(html|js|css)$ { gzip_static on; gzip on; # 启用压缩 gzip_min_length 1k; # 只压缩超过...要安装node哦,http-server是node一个模块。 2、浏览器缓存   我们先来看张图,理解下:   浏览器缓存这一块,实际上就是通过nginx配置头字段就可以了。

48330

浏览器缓存知识小结及应用

比如某个css文件,如果浏览器在加载它所在网页时,这个css文件缓存配置命中了强缓存浏览器就直接从缓存中加载这个css,连请求都不会发送到网页所在服务器; 2)当强缓存没有命中时候,浏览器一定会发送一个请求到服务器...ExpiresFilter专门用来配置强缓存,具体使用方式可参考tomcat官方文档:http://tomcat.apache.org/tomcat-7.0-doc/config/filter.html...由于在开发时候不会专门去配置强缓存,而浏览器又默认会缓存图片,cssjs静态资源,所以开发环境下经常会因为强缓存导致资源没有及时更新而看不到最新效果,解决这个问题方法有很多,常用有以下几种:...,通常都是针对静态资源使用,动态资源需要慎用,除了服务端页面可以看作动态资源外,那些引用静态资源html也可以看作是动态资源,如果这种html也被缓存,当这些html更新之后,可能就没有机制能够通知浏览器这些...协商缓存需要配合强缓存使用,你看前面这个截图中,除了Last-Modified这个header,还有强缓存相关header,因为如果不启用缓存的话,协商缓存根本没有意义。 7.

69430

Nginx配置文件及模块

理由一 ✦传统小型网站并发量小,用户使用少,所以在低并发情况下,用户可以直接访问tomcat服务器,然后tomcat服务器返回消息给用户。...为了解决并发,可以使用负载均衡,也就是多增加几个tomcat服务器,当用户访问时候,请求可以提交到空闲tomcat服务器上。...理由二 nginx常用做静态内容服务和代理服务器,直面外来请求转发给后面的应用服务(tomcat,django什么),tomcat更多用来做做一个应用容器,让java web app跑在里面的东西。...举例说明 下面的nginx.conf简单实现nginx在前端做反向代理服务器例子,处理js、png等静态文件,jsp等动态请求转发到其它服务器tomcat: user www www; worker_processes...gzip_http_version 1.0 : 用于识别 http 协议版本,早期浏览器不支持 Gzip 压缩,用户就会看到乱码,所以为了支持前期版本加上了这个选项,如果你用了 Nginx 反向代理并期望也启用

54720

《前端运维》二、Nginx–3静态资源服务、跨域与其他「建议收藏」

大家好,又见面了,我是你们朋友全栈君。 一、静态资源服务   首先,静态资源一般是指客户端发送请求到Web服务器,web服务器从内存中取得相应文件,返回给客户端,客户端解析并渲染出来。...一般静态资源有:HTML、CSSJS、JPEG、PNG、MPEG、Word、EXCEL等。   CDN全称是Content Delivery Network,即内容分发网络。...其目的是使用户可就近取得所需内容,解决 Internet网络拥挤状况,提高用户访问网站响应速度。 一、配置语法 1、sendfile   不经过用户内核发送文件。...(html|js|css)$ { gzip_static on; gzip on; # 启用压缩 gzip_min_length 1k; # 只压缩超过...要安装node哦,http-server是node一个模块。 2、浏览器缓存   我们先来看张图,理解下:   浏览器缓存这一块,实际上就是通过nginx配置头字段就可以了。

45320

Nginx 静态资源部署

# Nginx 静态资源部署 引言 静态资源如何部署?本内容带你了解静态资源相关操作和内容静态资源指令配置、静态资源优化配置、静态资源压缩配置、静态资源缓存配置。...Nginx模块添加 gzip_static测试 静态资源缓存配置 什么是缓存和Web缓存 Web缓存种类 为什么要用浏览器缓存 浏览器缓存执行流程 浏览器缓存相关指令 Nginx服务端缓存 # Nginx...静态资源即指在服务器端真实存在并且能直接拿来展示一些文件,比如常见 html 页面、css 文件、js 文件、图片、视频等资源; 动态资源即指在服务器端真实存在但是要想获取需要经过一定业务逻辑处理...# 静态资源缓存配置 当浏览器请求 Nginx 服务器资源后,我们可以让这些资源缓存浏览器里,这样再一次请求相同资源时,无需请求 Nginx 服务器,直接从浏览器缓存里获取,减少 Nginx 服务器压力...off:默认不缓存 例子 1 在配置文件添加如下内容: location ~ .*\.(html|js|css|png|jpg|jpeg|gif)$ { # ...

5.5K20

Progressive Web Apps

但侧重点不同,PWA缓存机制偏向于静态资源缓存,而Web App/SPA缓存层多用来做动态内容缓存(上次内容没过期的话,不再重新获取动态部分,而是直接做客户端渲染) 至于全屏,主屏图标以及系统通知等类...worker在install事件处理器完成包括App Shell在内首屏静态资源缓存: // service-worker.js var cacheName = 'weatherPWA-step-6...为了屏蔽这些边界case,推荐使用GoogleChromeLabs/sw-precache帮助处理缓存控制问题(包括过期,更新策略等等) 缓存有了,接下来实现代理部分,拦截请求,并把缓存内容作为响应:...: 按资源列表预先缓存静态资源 拦截请求 把缓存内容作为响应给过去 有3个注意事项: 浏览器缓存可能会影响缓存更新,所以install事件处理器中请求不会走缓存,而是直接进入网络 注销service...: 缓存版本控制依赖一个静态cache key,每次更新service-worker.js都要修改这个key 一旦cache key有变化,会抹掉所有缓存,重新请求一遍,对于静态资源有些浪费 缺少运行时缓存

1.1K40

提高IIS网站服务器性能2点考虑(缓存+gzip)

一、利用缓存,即内容过期   对于静态文件启用内容过期可以提高访问性能。...首先网站目录要划分合理,图片、CSS、JavaScript均放在单独目录下,然后在IIS中选择目录,点属性-HTTP头,启用内容过期,可以选择30天后过去,这样,用户浏览器将比较当前日期和截止日期,以便决定是显示缓存页还是从服务器请求更新页...IIS中选择目录,点属性-HTTP头,启用内容过期   关于这点有两个要求:   1)、减少HTTP请求数量,修改网站代码,减少外部图片、CSSJS等文件数量,手动合并多个CSS/JavaScript...2)、使用外部JavaScript和CSS,将所有的JavaScript和CSS都做成外部文件形式进行引用,这主要是为了让这些文件可以被浏览器缓存起来。...二、启用Gzip压缩,增加访问速度   HTTP压缩是在Web服务器和浏览器间传输压缩文本内容方法。HTTP压缩采用通用压缩算法如Gzip等压缩HTML、JavaScript或 CSS文件。

88220

Next.js + TypeScript 搭建一个简易博客系统

有前端基础同学就知道,不支持改文件名,会影响我们缓存策略。 如果 public 中静态资源没有加缓存,这样每次请求资源都会去请求服务器,造成资源浪费。...但是如果加了缓存,我们每次更新静态资源就必须更新资源名称,否则浏览器还是会加载旧资源。 所以,我们在根目录新建 /assets 来放置静态资源,并且需要在 next.js 中配置 webpack。...next-images 如果不想自己配置,也可以直接使用 next-images。...CSS:在 _app.js 里 import 自定义 head:使用 组件 Next.js API:都放在 /pages/api 目录中 三种渲染方式:BSR、SSG、SSR 动态内容 术语:客户端渲染...如浏览器窗口大小 静态内容 直接输出 HTML,没有术语。

3.6K20
领券