首页 文章

Vue JS Cli项目,文件夹不受Vue Router影响

提问于
浏览
1

我已经构建了一个Vue Cli应用程序,它将替换顶级域中的当前静态站点 .

但是,它正在替换的当前站点需要在子文件夹中保持活动(并且正常工作) . 理想情况下,当导航到这个子文件夹站点时,我希望完全独立于Vue .

在正常情况下,我可能会使用 /static 文件夹,但对于此任务我不能 . 这两个项目不能以这种方式混合在一起 .

理想情景:

这可能吗?目前,如果我这样做,Vue路由器将给我一个404,因为我的路由设置在顶层(通配路由):

const router = new VueRouter({
  mode: 'history',
  routes: [
    {
      path: '/',
      name: 'AppHome',
      component: AppHome
    },
    {
      path: '*',
      name: 'AppError',
      component: AppError
    }
  ]
})

我只是基本上想要允许链接到服务器上的子文件夹而不涉及Vue Cli /路由器 .

非常感谢 . 谢谢 .

2 回答

  • 2

    您可能已将Web服务器设置为将每个请求路由到https://example.com/ *到https://example.com . 这是必要的,让vue路由器处理路由,而不必在每个URL(https://example.com/#/my-page)中放置主题标签 .

    为了让您的网站服务器在您向https://example.com/old-site发出请求时返回旧网站,您必须配置您的网络服务器,以便它返回该文件夹,而不是像其他所有请求一样提供https://example.com . 你如何做到这一点取决于你的网络服务器're using, but I'我相信你能够弄清楚这一点 .

  • 2

    在我看来,这与VueJS无关,而与您的网络服务器(Apache / Nginx)无关 .

    如果是nginx,你可以添加新的位置

    location /old-site {
       root /old-site-dir/;
       try_files $uri $uri/ =404;
    }
    

相关问题