使用Vue-CLI创建的应用为404页面提供服务

Ste*_*ett 3 http-status-code-404 vue.js vuejs2 vue-cli

我正在使用Vue-CLI创建Vue应用程序。我不喜欢的一种行为是localhost:8080/nonexistent/file.html,使用代码200提供任何不存在的URL(例如),就像它是root:一样localhost:8080

这使得调试XHR请求有时真的很混乱。

如何使其返回404代码?

ton*_*y19 5

您正在观察的功能实际上来自webpack-dev-serverhistoryApiFallback,它对index.html未解析的URL 进行响应(打算用于具有客户端路由的SPA)。默认情况下,在Vue CLI项目中启用了此功能,但是您可以使用Vue CLI devServer配置禁用它:

  1. vue.config.js使用以下内容创建(如果尚不存在):

    module.exports = {
      devServer: {
        historyApiFallback: false
      }
    }
    
    Run Code Online (Sandbox Code Playgroud)
  2. 重新启动开发服务器(npm run serve)。