前端:

plugins: [
    // ...
    new webpack.DefinePlugin({
        'process.env.NODE_ENV': JSON.stringify('production')
    }),
    // ...
]
devServer: {
    historyApiFallback: true,
    contentBase: './dist'
}
  • 路由配置:
  1. const mode = process.env.NODE_ENV; // 只要在webpack配置的入口文件下可以访问
    const router = new VueRouter({
        mode: 'history',
        base:  mode === 'production' ? '/myApp-server/' : '/', // tomcat webapp
        routes // 自定义的路由: []
    });

     

后台配置

  • 方案1:修改tomcat 服务器的 webapps/myApp-server/WEB-INF/web.xml,关键配置如下,
 <error-page>
      <error-code>404</error-code>
      <location>/index.html</location>
 </error-page>
  • 方案2:方案一的每一个路由请求都会返回404,所以需要后台处理发生404时,进行重定向到 /index.html,而不是返回404错误回复。
Logo

前往低代码交流专区

更多推荐