一个项目下同时包括 web ( web 页面),admin (后台管理系统),server ( node 服务器)。
将 web 项目和 admin 项目打包后放入 node 服务端的静态资源中访问。 web 项目对应的是 /路由下的静态资源,admin 项目对应的是 /admin 路由下的静态资源。
nginx 中的配置是这样的,实际上运行的是 node 服务端。
location / {
proxy_pass http://127.0.0.1:3000;
include nginxconfig.io/proxy.conf;
}
我在 server 中使用了官方推荐的 connect-history-api-fallback 中间件,来做
server/index.js
如下,其中 history 为 connect-history-api-fallback 中间件
app.use('/admin', history(), express.static(__dirname + '/admin')) // admin 编译后静态文件托管
app.use('/', history(), express.static(__dirname + '/web')) // web 编译后静态文件托管
这时候使用 history 模式访问 web 的路由(/下的路由)没用问题,访问后台管理系统(/admin 路由)返回 index.html 和 js 都是 /路由下的???导致一直白屏
求教这是哪里不对呢
放弃使用connect-history-api-fallback中间件了。。。
现在的问题是当访问/admin
路由的时候,一直给我返回的是/
路由的首页。。。
nginx里还是上面那样配置的
1
ironMan1995 2020-03-25 18:50:10 +08:00 via Android
|
2
caopi OP @ironMan1995 就是这个一直不行啊。。。唉
|
3
caopi OP 舅舅我吧,实在是没办法了
|
4
saozhu 2020-03-25 19:17:28 +08:00
不太懂这方面,小胆猜测你这里 /admin 被 nginx 指到了 /
|
5
jingcoco 2020-03-25 19:56:46 +08:00 via Android
请问你是看到 vue 官方 SSR 方案吗,感觉不是这么简单吧。
|