用户反馈,服务部署后登录白版,工作流无法新建,跳转错误,组合模型访问失败等问题
排查发现:
- 部分接口authId为空
- 原因时cookie中的Context为/而不是/external/micros/asset/HappyServer
- 跳转为nginx地址,而不是域名
- 代理服务存在多级代理,第一级代理是第三方无法改变配置
原因
服务的ContextPath不是/HappyServer而是/external/micros/asset/HappyServer
浙里报已经指定分配了服务名称,不允许更改,并且作为第一层代理,已经指定代理到指定HappyServer服务,不允许更改
处理方式:
让tomcat的ContextPath与第三方指定服务名保持一致,写入的cookie可以起效
让第二层代理的Nginx的服务名成输出成HappyServer,并写死部分配置(第一层的转发我们无法干预)
这样不论跳转还是cookie都能保证正常
第一级代理/external/micros/asset/HappyServer
->
(nginx)HappyServer
->
(tomcat)/external/micros/asset/HappyServer
具体方式:
通过修改配置解决:
tomcat增加
将url路径指向/external/micros/asset/HappyServer
nginx配置修改
location /HappyServer {
proxy_pass http://127.0.0.1:18084/external/micros/asset/HappyServer;//直接执行修改后的tomcat
proxy_set_header zlb.czt.zj.gov.cn:443;//域名端口写死
proxy_redirect http:// https://;//http跳https
proxy_set_header X-Forwarded-Proto https;//写死
proxy_set_header X-Forwarded-Scheme https;//写死
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For zlb.czt.zj.gov.cn:443;//跳转写死
add_header 'Access-Control-Allow-Credentials' 'true';
#proxy_cookie_path / "/; httponly; samesite=none";//这个配置导致了cookie的context错误
#proxy_pass $v_lczReportServer;
#proxy_redirect default;
}
作者:fanchengliang 创建时间:2025-03-24 10:58
最后编辑:fanchengliang 更新时间:2025-04-22 15:31
最后编辑:fanchengliang 更新时间:2025-04-22 15:31
