Tomcat静态资源访问404问题
tomcat静态资源访问404问题
前言
该问题并不是eclipse或者是tomcat的问题,究其原因是自己资源路径写的有问题
分析
我的开发工具是eclipse,而不管是什么工具,项目都会有一个根路径
如图(右击项目->properties->deployment assembly)
注意source一栏就是根路径
如下
/src
/target/m2e-wtp/web-resources
/webcontent
那么根路径有什么用呢
例如,一般会把前端的资源放在项目中的webcontent文件夹下,比如你把index.html和index.js放在webcontent文件夹下,
这时你在index.html中引入index.js的文件路径就因该是
<script type="text/javascript" src="index.js">
而不是
<script type="text/javascript" src="./index.js">
理解了项目根路径,如果把index.js放在项目中webcontent文件夹static文件夹下又该怎么写呢
这时index.html文件中引入index.js就应该如下编写
<script type="text/javascript" src="static/index.js">
而不是
<script type="text/javascript" src="./static/index.js">或 <script type="text/javascript" src="/static/index.js">
总结:
在项目中要遵循项目规范
1. 理解我上面讲的根路径的问题
2. 不要使用相对路径和以/开头的路径名
例如:
不要写成
/static/index.js
而是要写成
static/index.js
最后:
也许项目中避免不了相对路径,而把静态资源部署到tomcat服务器又要改名字
最好的解决办法就是学会使用资源打包工具,例如webpack,其中的路径名交给webpack中的路径处理插件来解决
上一篇: 【Redis】入门
推荐阅读
-
用Nodejs搭建服务器访问html、css、JS等静态资源文件
-
Spring集成webSocket页面访问404问题的解决方法
-
三、解决Spring MVC拦截器导致静态资源访问失败(基于java注解配置)
-
Tomcat无法加载css和js等静态资源文件的解决思路
-
解决centos7中tomcat启动与本机访问问题
-
linux服务器上使用nginx访问本地静态资源的方法
-
nodejs构建本地web测试服务器 如何解决访问静态资源问题
-
解决nginx/apache静态资源跨域访问问题详解
-
用Nodejs搭建服务器访问html、css、JS等静态资源文件
-
(STS)Spring Boot使用外置Tomcat访问JSP页面报404问题