使用vue-router来实现的单页应用,访问http://cnode.lsqy.tech,进入首页,点击按钮跳入另一个路由,一切都是很正常的,但当这时刷新页面,发现就会出现404了。出现这样的错误Cannot GET /message/,因为默认浏览器会认为你是在请求服务端的路由,服务端那边没有对应的处理,所以自然就会出错了。
可以引入connect-history-api-fallback中间件来解决
var http = require('http'); var express = require('express'); var ecstatic = require('ecstatic'); // 写静态服务器 var history = require('connect-history-api-fallback'); var app = express(); app.use(history()); app.use(ecstatic({ root: __dirname + '/dist' })); http.createServer(app).listen(6565);
原文:https://blog.csdn.net/github_36695991/article/details/100166737