在 Spring Boot 集成 Freemarker 的项目中,可以通过以下方式设置 Expires headers 以优化网页加载速度:
-
在 Spring Boot 项目的配置文件 application.properties 或 application.yml 中添加以下配置,以启用静态资源缓存:
# 启用静态资源缓存 spring.resources.cache.period: 31556926
上述配置会启用静态资源缓存,并将缓存时间设置为 1 年。
-
在 Spring Boot 项目的配置类中注册一个自定义的拦截器,用于设置 Expires headers:
@Configuration public class WebMvcConfigurer implements WebMvcConfigurer { @Override public void addInterceptors(InterceptorRegistry registry) { WebMvcConfigurer.super.addInterceptors(registry); registry.addInterceptor(new ExpiresHeaderInterceptor()); } }
-
创建一个自定义的拦截器 ExpiresHeaderInterceptor,用于设置 Expires headers。在拦截器中添加以下代码:
@Configuration public class WebMvcConfigurer implements WebMvcConfigurer { @Override public void addInterceptors(InterceptorRegistry registry) { WebMvcConfigurer.super.addInterceptors(registry); registry.addInterceptor(new ExpiresHeaderInterceptor()); } }
上述代码会在请求静态资源时设置 Expires headers,以启用浏览器缓存,并将过期时间设置为 1 年。
通过以上步骤,可以设置 Expires headers,在浏览器中启用静态资源缓存,并提升网页加载速度。请注意,禁用浏览器缓存会使网站在每次访问时都重新下载静态资源,增加了网站的响应时间和网络带宽的占用,因此建议使用上述方式启用浏览器缓存。