SpringBoot打成war包后Tomcat无法访问静态资源问题

简介: SpringBoot打成war包后Tomcat无法访问静态资源问题

pom.xml配置了包名

<build>
  <!--生成war包的名称-->
  <finalName>mobile</finalName>
</build>

将mobile.war放入tomcat的webapps目录下,页面可以访问

http://localhost:8080/mobile/

不过发现静态文件都无法访问

/static/img/icon.png

静态地址是以绝对路径/static开头的,tomcat部署了多个项目,它也不知道你要访问那个项目下的静态资源,如果加上mobile 就可以访问到

/mobile/static/img/icon.png

可是我总不能在每个文件都加这么一个前缀吧

其实通过Nginx转发一下就能实现了


location / {
    proxy_pass http://127.0.0.1:8080/mobile/;
    proxy_set_header Host $host;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

这样一来所有路径都做了转发

/                    => /mobile/
/static/img/icon.png => /mobile/static/img/icon.png
相关文章
|
9月前
|
Java 应用服务中间件
多项目分接口:在同一Tomcat下使用不同的端口号访问不同的项目。
总而言之,要在同一Tomcat服务器下使用不同端口访问不同项目,关键是通过对server.xml文件的配置创建多个 `<Service>`实例和相应的虚拟主机。这种方法既实现了项目隔离,也有助于优化资源利用率。通过遵循本文的详细说明,很容易地就能满足需求实现多项目分接口。
374 38
|
Ubuntu 前端开发 JavaScript
技术笔记:Ubuntu:一个部署好的tomcat应用(war包)怎么用Nginx实现动静分离?
技术笔记:Ubuntu:一个部署好的tomcat应用(war包)怎么用Nginx实现动静分离?
|
Java 应用服务中间件 Apache
使用IDEA修改Web项目访问路径,以及解决Apache Tomcat控制台中文乱码问题
本文介绍了在IntelliJ IDEA中修改Web项目访问路径的步骤,包括修改项目、模块、Artifacts的配置,编辑Tomcat服务器设置,以及解决Apache Tomcat控制台中文乱码问题的方法。
1373 0
使用IDEA修改Web项目访问路径,以及解决Apache Tomcat控制台中文乱码问题
|
Java 应用服务中间件 Shell
|
Java 应用服务中间件 Linux
Tomcat安装部署[单机软件],可以让用户开发的WEB应用程序,变成可以被访问的网页,Tomcat的使用需要jdk环境
Tomcat安装部署[单机软件],可以让用户开发的WEB应用程序,变成可以被访问的网页,Tomcat的使用需要jdk环境
|
JavaScript 前端开发 Java
SpringBoot03_静态资源访问、请求参数处理(下)
③. webjar 了解 ④. web场景-welcome与favicon功能
173 0
SpringBoot03_静态资源访问、请求参数处理(下)
|
Java 应用服务中间件 Maven
传统maven项目和现在spring boot项目的区别
Spring Boot:传统 Web 项目与采用 Spring Boot 项目区别
773 0
传统maven项目和现在spring boot项目的区别
|
XML Java 数据库连接
创建springboot项目的基本流程——以宠物类别为例
创建springboot项目的基本流程——以宠物类别为例
262 0
创建springboot项目的基本流程——以宠物类别为例
|
存储 机器学习/深度学习 IDE
SpringBoot 项目与被开发快速迁移|学习笔记
快速学习 SpringBoot 项目与被开发快速迁移
SpringBoot 项目与被开发快速迁移|学习笔记

热门文章

最新文章