如何详细配置vue-cli在history模式下的长尾词?

2026-04-05 21:051阅读0评论SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计880个文字,预计阅读时间需要4分钟。

如何详细配置vue-cli在history模式下的长尾词?

背景:搭建了Vue测试项目,使用的是history模式,放置在后台,一开始进入项目没问题,但再次刷新页面就会显示404,这是什么原因呢?

分析:可能是由于浏览器缓存或服务器配置问题导致的。

原因:因为之前项目上线时使用的是history模式,导致浏览器缓存了之前的路由配置。当再次刷新页面时,浏览器尝试访问一个不存在的路由,从而返回404错误。

解决方法:

1.清除浏览器缓存:尝试关闭浏览器,然后重新打开,看是否还能重现问题。

2.修改路由配置:确保项目中路由配置正确,且与服务器端的路由配置一致。

3.设置服务器重定向:在服务器配置中添加重定向规则,将不存在的路由重定向到首页或其他页面。

4.使用Vue Router的滚动行为:在路由配置中设置滚动行为,避免刷新页面时滚动条位置错误。

示例代码:

javascriptconst router=new VueRouter({ mode: 'history', routes: [ { path: '/', component: Home }, { path: '/about', component: About }, // ...其他路由配置 ], scrollBehavior(to, from, savedPosition) { if (savedPosition) { return savedPosition; } else { return { x: 0, y: 0 }; } }});

总结:解决404错误的关键在于确保路由配置正确,同时清除浏览器缓存和服务器配置可能也会有所帮助。

背景:自己搭了vue测试项目,使用的是history模式,放在后台,一开始进入项目没什么问,但是再一刷新页面就404了,what?当时的比较懵逼,为啥呢?因为之前写过项目上线过是好用的啊,这个项目按照那个写的啊,但是解压项目zip文件之后发现,WEB-INF没有引入,瞬间就WC了,为了以防自己犯这种SX的问题浪费时间,所以打算记录下history的配置

1、配置router/index.js


2、build/utils.js


3、webpack.prod.conf.js,这里配置因为我们的应用是个单页客户端应用,如果后台没有正确的配置,当用户在浏览器直接访问 oursite.com/user/id 就会返回 404,这就不好看了。

所以呢,你要在服务端增加一个覆盖所有情况的候选资源:如果 URL 匹配不到任何静态资源,则应该返回同一个 index.html 页面,这个页面就是你 app 依赖的页面。

这里可以看官网文档:router.vuejs.org/zh/guide/essentials/history-mode.html

<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="www.w3.org/2001/XMLSchema-instance" xmlns="xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="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>

再配置webpack.prod.conf.js,因为我使用了friendly-errors-webpack-plugin压缩插件,打包成zip包


如何详细配置vue-cli在history模式下的长尾词?

配置到这里就结束了,希望可以给大家一点点帮助,主要是给自己看^v^!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。

标签:配置详解

本文共计880个文字,预计阅读时间需要4分钟。

如何详细配置vue-cli在history模式下的长尾词?

背景:搭建了Vue测试项目,使用的是history模式,放置在后台,一开始进入项目没问题,但再次刷新页面就会显示404,这是什么原因呢?

分析:可能是由于浏览器缓存或服务器配置问题导致的。

原因:因为之前项目上线时使用的是history模式,导致浏览器缓存了之前的路由配置。当再次刷新页面时,浏览器尝试访问一个不存在的路由,从而返回404错误。

解决方法:

1.清除浏览器缓存:尝试关闭浏览器,然后重新打开,看是否还能重现问题。

2.修改路由配置:确保项目中路由配置正确,且与服务器端的路由配置一致。

3.设置服务器重定向:在服务器配置中添加重定向规则,将不存在的路由重定向到首页或其他页面。

4.使用Vue Router的滚动行为:在路由配置中设置滚动行为,避免刷新页面时滚动条位置错误。

示例代码:

javascriptconst router=new VueRouter({ mode: 'history', routes: [ { path: '/', component: Home }, { path: '/about', component: About }, // ...其他路由配置 ], scrollBehavior(to, from, savedPosition) { if (savedPosition) { return savedPosition; } else { return { x: 0, y: 0 }; } }});

总结:解决404错误的关键在于确保路由配置正确,同时清除浏览器缓存和服务器配置可能也会有所帮助。

背景:自己搭了vue测试项目,使用的是history模式,放在后台,一开始进入项目没什么问,但是再一刷新页面就404了,what?当时的比较懵逼,为啥呢?因为之前写过项目上线过是好用的啊,这个项目按照那个写的啊,但是解压项目zip文件之后发现,WEB-INF没有引入,瞬间就WC了,为了以防自己犯这种SX的问题浪费时间,所以打算记录下history的配置

1、配置router/index.js


2、build/utils.js


3、webpack.prod.conf.js,这里配置因为我们的应用是个单页客户端应用,如果后台没有正确的配置,当用户在浏览器直接访问 oursite.com/user/id 就会返回 404,这就不好看了。

所以呢,你要在服务端增加一个覆盖所有情况的候选资源:如果 URL 匹配不到任何静态资源,则应该返回同一个 index.html 页面,这个页面就是你 app 依赖的页面。

这里可以看官网文档:router.vuejs.org/zh/guide/essentials/history-mode.html

<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="www.w3.org/2001/XMLSchema-instance" xmlns="xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="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>

再配置webpack.prod.conf.js,因为我使用了friendly-errors-webpack-plugin压缩插件,打包成zip包


如何详细配置vue-cli在history模式下的长尾词?

配置到这里就结束了,希望可以给大家一点点帮助,主要是给自己看^v^!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持易盾网络。

标签:配置详解