首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >一旦建立生产,Vue路由器就无法工作

一旦建立生产,Vue路由器就无法工作
EN

Stack Overflow用户
提问于 2019-07-02 13:00:34
回答 1查看 5.8K关注 0票数 4

当我使用dev构建Vue项目时,它可以正常工作。然而,一旦我运行npm run build并将dist中的文件移动到我的work服务器,Vue路由器似乎就不再工作了。

我试过移除历史模式,但这行不通。

Vue路由器

代码语言:javascript
复制
import Vue from 'vue'
import Router from 'vue-router'
import Home from './views/Home.vue'
import axios from 'axios'

Vue.use(Router)

const router =  new Router({
  mode: 'history',
  base: process.env.BASE_URL,
  routes: [
    {
      path: '/',
      name: 'home',
      component: Home
    },
    {
      path: '/donate',
      name: 'donate',
      component: () => import('./views/Donate.vue')
    },
    {
      path: '/guildselector',
      name: 'guildselector',
      meta: {
        requiresAuth: true
      },
      component: () => import('./views/Guildselector.vue')
    },
    {
      path: '/guild/:id',
      name: 'guild',
      meta: {
        requiresAuth: true,
        requiresAdmin: true
      },
      component: () => import('./views/Guildpanel.vue')
    }
  ]
})

export default router

例如,MyWebsite.com/guildselector应该显示Guildselector组件,但是我得到了一个

代码语言:javascript
复制
Not Found The requested URL /guildselector was not found on this server.

只有捐赠页和登陆页工作。

EN

回答 1

Stack Overflow用户

发布于 2019-07-02 13:14:03

这是一个非常常见的问题;请详细阅读HTML5历史模式有关如何配置您的web服务器以正确地承载文件。

但是,这里有一个问题:因为我们的应用程序是一个单一页面的客户端应用程序,如果没有适当的服务器配置,那么如果用户在浏览器中直接访问http://oursite.com/user/id,就会得到404错误。

简单的解决方案就是评论这一行:

代码语言:javascript
复制
mode: 'history',
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56853081

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档