使用nginx作为反向代理运行Apache Zeppelin
作者:互联网
在我们当前的体系结构中,我们有两个apache前端服务器,在它们前面,我们有一个nginx负载均衡器.在此之前,还有一个nginx反向代理.
我的问题是我正在尝试通过反向代理运行Apache Zeppelin,并且websockets出现了一些问题.
我收到这样的错误:该URL不支持400 HTTP方法GET
我为Zeppelin添加了反向代理配置:
error_log /var/log/nginx/nginx_error.log warn;
server {
listen 80;
server_name localhost;
location /zeppelin/ {
proxy_pass http://zeppelin:8080/;
proxy_http_version 1.1;
proxy_set_header Upgrade websocket;
proxy_set_header Connection upgrade;
}
# fallback
location / {
return 301 http://ci.blablalablab.com/app/;
}
}
Zeppelin在docker容器中运行,我公开了8080端口,其主机名为:zeppelin.
如果您对体系结构有任何疑问,请随时提出.
非常感谢你们 !
解决方法:
您可以添加到反向代理配置
location /ws { # For websocket support
proxy_pass http://zeppelin:8080/ws;
proxy_http_version 1.1;
proxy_set_header Upgrade websocket;
proxy_set_header Connection upgrade;
proxy_read_timeout 86400;
}
标签:nginx,apache-zeppelin,websocket,apache,reverse-proxy 来源: https://codeday.me/bug/20191026/1934281.html