web页面找不到资源文件,报404,但是资源文件存在且路径没错
由于引入js,css或者外部文件的时候,路径前带/或者../等报错
这个原因有可能很多,但是我这里只列出一种至少我没有Google到的原因。
前情提要:由于之前web项目不是我写的,我感觉代码比较乱很多不喜欢,想重写。我要做的是提供接口给app,实现跟web端差不多的功能。然后我就新建了一个web项目,发现自己重写需要比较长的时间,app又着急上线,所以我就准备以后再重构。我就把后台内容直接从以前的项目中拷贝过来了,但是没有拷贝前端的,后来想着只需要启一个项目,就能让app和web同时访问,就又把前端的文件拷贝过来了。
拷贝过来之后就出问题了,总报引不到资源文件,比如图片,登录的时候点记住密码就登录不上,前端报404,怎么都找不到原因,看路径又是对的。后来在把引入文件的src项最前面的/或者是../删除之后就好用了。
但是我明明没有改动啊,回去看以前的项目,就是以前那样也能正常运行啊。最后发现的原因竟然是:context root引起的。之前的项目的context root是/ 但是我创建的项目我没有改动,context root是项目名称,我把context root由项目名称改为/就好了。方法就是右键点击项目,选择最下面的properties,然后就会弹出如下图的框,就可以根据下图更改了。