Vue-Router

Estimados.
Hace más de un año empecé a desarrollar una ApiResfull con Vuejs y Node . La aplicación funciona correctamente cuando integro el frontend y el backend en un solo servidor. Por temas de productividad deseo implementar el backend y frontend en servidores diferentes. Al hacerlo se me presenta un error que no he podido darle solución. El problema se origina cuando doy click en el icono actualizar de la barra de navegación para recargar la pagina y allí es donde me arroja el siguiente error: 404 - File or directory not found.
Es posible, desplegar el backend y frontend en servidores independientes y que no arroje este error. Agardezco de antemano sus comentarios y apoyo. Mi codigo app.js de node:

   import express  from 'express'
   import morgan from 'morgan'
   import cors from 'cors'
   import path from 'path'
  import router from './routes'
  import history from 'connect-history-api-fallback'

const app = express()


app.use(morgan('dev'))
app.use(cors())
app.use(express.json());
app.use(express.urlencoded({ extended: true }))

 //Routes
app.use('/api',router)

// Middleware para Vue.js router modo history
   app.use(history())
   app.use(express.static(path.join(__dirname, 'public')))

  export default app

El index.js de routes en Vue:

import Vue from 'vue'
import VueRouter from 'vue-router'
import Dashboard from '../components/app/Dashboard.vue'
import Categorias from '../components/app/Categorias.vue'
Vue.use(VueRouter)

 const routes = [
 {
  path: '/',
  name: 'Home',
  component: () => import('../views/Home.vue')
  },
  {
   path: '/dashboard',
   name: 'Dashboard',
   component: Dashboard,
   meta :{
    administrador:true,
    almacenero:true,
    empleado:true,
    vendedor:true,
    cliente:true
   }
   },
  {
   path: '/categorias',
  name: 'Categorias',
  component: Categorias,
  meta :{
  administrador:true,
  empleado:true
  }
},
 {
  path: '/usuarios',
  name: 'Usuarios',
  component: Usuarios,
 meta :{
  administrador:true
 }
},
const router = new VueRouter({
mode: 'history',
base: process.env.BASE_URL,
routes
})

  router.beforeEach((to, from, next) => {

  const rutaprotegida = to.matched.some(record => 
  record.meta.administrador)
  if(rutaprotegida && store.state.token === ''){
  next({name:'Home'});
   }else{
   next()
  }
 })

export default router

Que puedo estar haciendo mal?