404:源服务器未能找到目标资源的表示或者是不愿公开一个已经存在的资源表示的问题解决思路
创始人
2025-01-21 08:06:12
0

文章目录

  • 概述
  • 静态资源映射问题
  • 路径匹配问题

概述

今天把一个尘封已久的项目拿出来跑发现访问其中一个静态页面的时候显示如下错误:
在这里插入图片描述
先开始我想的是不是路径写错了,但是经过排查发现不是。然后查了一堆资料也没有解决。最后发现是静态资源映射的代码被我注释掉了,直接裂开:
在这里插入图片描述

接下来就说说这种问题的两种解决思路:

  • 静态资源映射导致的问题
  • 路径匹配不上导致的问题

静态资源映射问题

首先我们知道Tomcat在运行SpringMVC的web项目时,存在着以下几个步骤:
在这里插入图片描述
也就是根web上下文,MVC上下文,初始化DispatcherServlet,初始化Servlet的bean

我这里没有使用MVC上下文,直接使用的spring根上下文所以没有显示

而DispatcherServlet负责总的调度,我们一般会让Dispatcher拦截所有请求:

	@Override     protected String[] getServletMappings() {         return new String[]{"/"};     } 

也就是说这个时候所有的项目请求都会被交给SpringMVC处理。但是我们如果要访问静态资源,同样也会被拦截。
在这里插入图片描述

所以这个时候我们要配置静态资源映射,让我们能顺利访问。

代码如下:

@Configuration public class SpringMVCSupport extends WebMvcConfigurationSupport {     @Override     protected void addResourceHandlers(ResourceHandlerRegistry registry) {         registry.addResourceHandler("/pages/**").addResourceLocations("/pages/");         registry.addResourceHandler("/js/**").addResourceLocations("/js/");         registry.addResourceHandler("/plugins/**").addResourceLocations("/plugins/");         registry.addResourceHandler("/css/**").addResourceLocations("/css/");     } } 
  • addResourceHandler添加访问路径
  • addResourceLocation添加映射后的真实路径
  • 映射的真实路径末尾必须加/,不然映射不到适用于 windows和linux

路径匹配问题

有的时候可能是路径问题:

如果实在是弄不懂文件的路径,我们可以对照着文件夹写,例如我们找到项目编译之后的target文件夹在里面我们可以看到一个和项目同名的文件夹:
在这里插入图片描述
这个文件夹就是当前项目在tomcat或者其他服务器上运行时的文件夹结构,我们对照着写就可以了。

然后还要注意静态资源不能放在WEB-INF文件夹中。因为WEB-INF是Java的WEB应用的安全目录。所谓安全就是客户端无法访问,只有服务端可以访问的目录。

如果想在页面中直接访问其中的文件,必须通过 web.xml 文件对要访问的文件进行相应映射才能访问。

相关内容

热门资讯

第八分钟辅助!嗨动互动辅助,确... 第八分钟辅助!嗨动互动辅助,确实是真的有辅助挂(竟然有挂)1、操作简单,无需嗨动互动辅助手机版透视脚...
截至目前!约局吧德州可以透视吗... 截至目前!约局吧德州可以透视吗,佛手在线有挂吗,阶段教程(有挂教学)1、每一步都需要思考,不同水平的...
6分钟辅助!游戏茶苑辅助,原来... 6分钟辅助!游戏茶苑辅助,原来真的是有辅助软件(今日头条)1、每一步都需要思考,不同水平的挑战会更加...
最新消息!wepoker有透视... 最新消息!wepoker有透视底牌吗,wepoker免费脚本弱密码,法子教程(有挂总结)亲,关键说明...
三分钟辅助!wepoker透视... 三分钟辅助!wepoker透视脚本下载,总是是真的有辅助器(有挂工具)1、wepoker透视脚本下载...
出乎意料的是!大菠萝免费辅助,... 出乎意料的是!大菠萝免费辅助,wepoker透视脚本免费下载,指南教程(有挂助手)1.wepoker...
第九分钟辅助!微信多乐辅助,竟... 第九分钟辅助!微信多乐辅助,竟然有辅助技巧(有挂详细)进入游戏-大厅左侧-新手福利-激活码辅助透视技...
第三方辅助!wepoker私局... 第三方辅助!wepoker私局代打,we poker辅助器v3.3,总结教程(有挂助手)一、we p...
第一分钟辅助!吉利比鸡辅助,都... 第一分钟辅助!吉利比鸡辅助,都是有辅助方法(确实有挂)进入游戏-大厅左侧-新手福利-激活码辅助透视技...
黑科技技巧!hhpoker是正... 黑科技技巧!hhpoker是正品吗,aapoker怎么设置提高好牌几率,法门教程(有挂攻略)1、打开...