polaris-main-proxy-test
v1.0.2
Published
## 工作台不需求启用主应用也可以开发的方案
Downloads
2
Readme
代理服务
工作台不需求启用主应用也可以开发的方案
index.js 解决了,不启动polaris-main,也可以运行子应用的方案 思路就是:访问9526端口的时候启动子应用,访问9526端口的默认访问测试环境,如果是访问子项目则通过代理到本地子项目服务
工作台测试环境解决困扰多年,无法进行容器化的解决方案
原因
- 问题:使用容器比如docker-k8s 部署的时候,一刷新页面就无法正常访问子应用。原因是访问index.html的时候访问了子应用的index.html。 原因:那么需要每次访问index.html都要不经过代理,访问的都是主项目的index.html。
#nginx.conf
# 一直困惑运维,没有将工作台升级到容器化,导致每次回滚都需要重新构建的原因
# 用来判断是否是html或xhtml,以判断是否刷新页面请求index.html,是解决访问子项目,qiankun刷新页面后白屏的关键
map $http_accept $is_html_or_xhtml {
default 0;
~*text/html 1;
~*application/xhtml+xml 1;
}
# polaris-main.conf
# 如果是访问子项目
location /sub-service/ {
# 默认代理地址, 比如fetch请求,qiankun使用通过fetch来请求子项目的资源的
set $backend http://192.168.0.101:7780;
# 如果是请求html或者xhtml,则使用直接访问测试环境
set $is_html_or_xhtml 0;
if ($is_html_or_xhtml) {
set $backend http://polaris-test.int.zhumanggroup.com/;
}
proxy_pass $backend;
}