vue-cli,history 与 tomcat服务器,刷新404,请求资源404,解决办法

前文:CSDN也发布了相同文章,https://blog.csdn.net/qq_41797950/article/details/104373743

问题:
vue-cli,路由history,tomcat服务器,刷新404问题,刷新后请求资源路径不对。

配置:
vue-cli:版本2.9.6
服务器:tomcat

注:仅是本项目的解决办法,可以参考,希望能帮到大家

1- config文件夹index.js,build下的 assetsPublicPath 改为 ‘/ec/’,名字根据项目自己定义

2- router文件夹下的index.Js, mode: ‘history’ , base: ‘/ec/’,与 assetsPublicPath 相同

3- static同级创建 WEB-INF/web.xml 文件夹,用来404时,重定回index.html页面

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee/web-app_2_5.xsd"
         id="scplatform" version="2.5">
  <display-name>/</display-name>
  <error-page>
    <error-code>404</error-code>
    <location>/index.html</location>
  </error-page>
</web-app>
————————————————
版权声明:本文为CSDN博主「杜明鸣」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_41797950/article/details/104373743

4. build/webpack.dev.conf.js 与 build/webpack.prod.conf.js下的 new CopyWebpackPlugin 里,添加:

  {
        from: path.resolve(__dirname, ‘../WEB-INF‘),
        to: ‘WEB-INF‘,
        ignore: [‘.*‘]
    }

5. 网上很多教程都到这一步,然后项目正常启动,但是除了入口页面,其他页面刷新还是空白页面,打开F12,结果静态资源404报错,正确路径为 ec/static/css , 刷新后变为 ec/admin/static/css ,请求路径错误,404,所以页面空白

6. 更改 build/webpack.prod.conf.js 下的 output 下的 publicPath: “/ec/”,图片里写的第五步,是因为没算上报错的截图,问题不大,小细节,别在意,哈哈

7. 此时,打包,放到tomcat,再刷新,请求路径就好了

 

原文地址:https://www.cnblogs.com/dumingming/p/12326016.html

时间: 2024-10-15 03:53:00

vue-cli,history 与 tomcat服务器,刷新404,请求资源404,解决办法的相关文章

HTTP 错误 404.17 - Not Found和 HTTP 错误 404.2 - Not Found 解决办法

HTTP 404.2 - Not Found" IIS 7.5 请求的内容似乎是脚本,因而将无法由静态文件处理程序来处理 解决办法: 使用aspnet_regiis.exe注册.NET Framework 重新安装IIS以后,需要用aspnet_regiis.exe来注册.NET Framework 运行cmd,输入: C:\Windows\Microsoft.NET\Framework\V4.0.30319\aspnet_regiis -i (V4.0.30319, 视实际.net 框架来定)

Tomcat启动找不到JAVA_HOME另类解决办法

1.解决方法:比较新版本的JDK,比如JDK1.7.安装完JDK不会自动注册环境变量JAVA_HOME,JRE_HOME. 这里有一种简单的方法,就是修改setclasspath.bat文件的方法.原理是Tomcat的startup.bat,它调用了catalina.bat,而catalina.bat调用的是setclasspath.bat文件. 修改如下: rem------------------------------------------------------------------

阿里云服务器无法访问80端口的解决办法

1: 阿里云服务器无法访问80端口的解决办法 当我们搭建服务器时候,无论80,3306,21,等端口本地服务器上搭建环境就已经开通,但是服务器中防火墙中主要就是拦截端口的,在windows药在高级防火墙中添加站入端口一个个配置,在阿里云中还要在控制台中开通的

关于调用notifyDataSetChanged刷新PullToRefreshListView列表无反应解决办法

文章转载自:关于调用notifyDataSetChanged刷新PullToRefreshListView列表无反应解决办法 | TeachCourse

tomcat单独启动时闪退的解决办法,以及修改端口8080为80,

tomcat单独启动时闪退的解决办法: 点击" startup",马上就闪退了:原因一般都是没有配置%JAVA_HOME%和tomcat的环境变量造成的: 很简单: 在startup.bat那个文件下,编辑点进去之后,在最上边的echo off上面加上: SET JAVA_HOME=C:\Program Files\Java\jdk1.7.0_60 SET TOMCAT_HOME=C:\apache-tomcat-7.0.53 然后shutdown.bat里面也要加上这两句话: 然后重

Linux下Tomcat向MySQL插入数据中文乱码解决办法

Linux下Tomcat向MySQL插入数据中文乱码解决办法 一.问题 在windows上面使用eclipse开发的项目在windows上面运行一切正常,部署到腾讯云时出现向MySQL数据库中插入数据是中文乱码 二.解决办法 1.尝试一直接在linux上面使用insert语句插入中文,正常2.尝试二在tomcat配置文件server.xml中加入useBodyEncodingForURI="true",不行3.尝试三在tomcat配置文件server.xml中再加入URIEncodin

web网站css,js更新后客户浏览器缓存问题,需要刷新才能正常展示的解决办法

问题描述 最近将公司官网样式进行了调整,部署到服务器后访问发现页面展示不正常,但是刷新之后就会展示正常. 问题分析 研究之后发现可能的原因有 css文件过大,加载缓慢 本地缓存问题,虽然服务器修改了css文件,但是浏览器仍然使用本地缓存的css, 需要用户多刷新一次才能正常展示显然是很不合理的,那么怎么样解决更新后让浏览器请求新的css或js文件呢? 解决办法 方法1 更新文件后更改css/js文件名. 其实解决这个问题很简单,缓存是通过文件名标记缓存的内容的.在你更新了网站的css文件内容后,

【转载】web网站css,js更新后客户浏览器缓存问题,需要刷新才能正常展示的解决办法

原文:http://blog.csdn.net/csdn100861/article/details/50684438 问题描述 部署到服务器后访问发现页面展示不正常,但是刷新之后就会展示正常. 问题分析 可能的原因有 css文件过大,加载缓慢 本地缓存问题,虽然服务器修改了css文件,但是浏览器仍然使用本地缓存的css, 需要用户多刷新一次才能正常展示显然是很不合理的,那么怎么样解决更新后让浏览器请求新的css或js文件呢? 解决办法 方法1 更新文件后更改css/js文件名. 其实解决这个问

阿里云服务器被挖矿minerd入侵的解决办法

今天老大手机报警 我检查发现阿里云服务器CPU很高,执行 top 一看,有个进程minerd尽然占用了90%多的CPU, 赶紧百度一下,查到几篇文章都有人遇到同样问题 Hu_Wen遇到的和我最相似,下边是他的解决办法 http://blog.csdn.net/hu_wen/article/details/51908597 但我去查看启动的服务,尽然没有 lady 这个服务. 找不到始作俑者,那个minerd进程删掉就又起来了,后来想了个临时办法,先停掉了挖矿的进程 关闭访问挖矿服务器的访问 ip