vue.js - 使用 Vue-CLI 创建的应用程序提供 404 页面

标签 vue.js vuejs2 http-status-code-404 vue-cli

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

这有时会使调试 XHR 请求变得非常困惑。

如何让它返回 404 代码?

最佳答案

您观察到的特征实际上来自 webpack-dev-server's historyApiFallback ,它以 index.html 响应未解析的 URL(用于具有客户端路由的 SPA)。这在 Vue CLI 项目中默认启用,但您可以使用 Vue CLI 禁用它 devServer config :

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

    module.exports = {
      devServer: {
        historyApiFallback: false
      }
    }
    
  2. 重新启动您的开发服务器(npm run serve)。

关于vue.js - 使用 Vue-CLI 创建的应用程序提供 404 页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53771459/

相关文章:

.htaccess - htaccess 错误 404 的自定义目录

javascript - 如何在 Vue 中使用全局函数?

javascript - Vue.js 中的可选参数

javascript - Vue - 响应式媒体 .readyState

javascript - 过渡组件 Vuejs - 不工作 - 内部和外部之间的差异

django - 在模型中的 Django 中保存 404 错误的 URL

javascript - 当<router-view/>改变时,为什么router的旧组件仍然是 '$on'并处理事件?

vue.js - 如何在 vuejs 应用程序中设置动态基本 url?

javascript - 在 jest document.querySelector 中测试 vue 组件期间始终返回 null

php - Magento 连接管理器/404 错误/Magento 1.9