前言:
如今小伙伴们对“nginx处理静态资源”大概比较重视,朋友们都想要学习一些“nginx处理静态资源”的相关知识。那么小编在网络上汇集了一些有关“nginx处理静态资源””的相关内容,希望看官们能喜欢,各位老铁们快快来学习一下吧!1. 介绍
1.1 介绍
福哥今天带着大家了解一下SpringBoot如何处理静态资源文件的。静态资源文件包括CSS样式表、图片文件(jpg、png、gif)、JavaScript脚本以及各种媒体、压缩包等等内容,总结一句话就是非配置文件、非Java的文件。
静态资源文件是不需要经过编译、执行的,最好的处理方式是通过Nginx直接处理。但是我们在开发调试阶段是没有Nginx服务器的,只能通过Tomcat进行处理,这时候就需要了解一下如何在SpringBoot项目里面处理这些静态的资源文件了。
2. 目录
2.1 目录
SpringBoot给我们预留了资源文件的根目录,就是main下面的resources,和java在同一目录下。然后,如果我们在resources下面建立staitc、public、resources这几个目录的话,最后都会被SpringBoot当作静态目录使用。
2.2 优先级
如果我们在static、public、resources里面建立了同样的目录结构,放入了同名的文件,那么最后哪个目录下面的文件会被使用呢?
记住下面这个优先级顺序,就好办了!
resources > static > public
虽然resources的优先级是最高的,不过福哥还是推荐使用static这个目录名称,比较这个单词更加符合我们放入的文件的意思嘛~~
3. 测试
index.ftl
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>demo</title> <link type="text/css" href="/css/index.css" rel="stylesheet" /> <script type="text/javascript" src="/js/index.js"></script></head><body><h3>福哥的demo</h3><p> 这是福哥的一个demo项目,用来给大家做教程使用!</p><span id="browser"></span><br /><span>;/span></body></html>
index.css
body{ font-size: 12px;}
index.js
document.onreadystatechange=function(){ document.getElementById('browser').innerHTML = navigator.appName;};4. 认证
如果我们的项目有认证设计,那么就需要针对静态的资源文件进行“免认证”设置,这个可以通过antMatchers进行配置,可以通过“*”通配符进行批量设置。
security .csrf().disable() .authorizeRequests() .antMatchers("/css/*", "/images/*", "/js/*").permitAll() .anyRequest() .authenticated() .and() .httpBasic() ;5. 总结
今天福哥带着童鞋们学习了如何在SpringBoot框架里面处理静态资源文件。我们可以使用freemarker去处理页面html,在html里面引用这些静态资源文件,综合这些就可以满足web平台的开发需求了!
标签: #nginx处理静态资源