运行 以 nginx 作为反向代理的 Apache Zeppelin
Running Apache Zeppelin with nginx as reverse proxy
在我们当前的架构中,我们有两个 apache 前端服务器,在它们前面,我们有一个 nginx 负载平衡器。在它前面是一个 nginx 反向代理。
我的问题是我正在尝试通过反向代理 运行 Apache Zeppelin,但我在使用 websockets 时遇到了一些问题。
我收到这样的错误:400 HTTP method GET is not supported by this URL
下面是 Chrome 的“网络”选项卡显示的屏幕截图:
我为 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;
}
经过大量的挖掘,我最终得到了这个配置:
location /zeppelin/ {
proxy_pass http://zeppelin:8080/;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_redirect off;
}
location /zeppelin/ws {
proxy_pass http://zeppelin:8080/ws;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
}
效果不错,感谢大家的努力;)
在我们当前的架构中,我们有两个 apache 前端服务器,在它们前面,我们有一个 nginx 负载平衡器。在它前面是一个 nginx 反向代理。
我的问题是我正在尝试通过反向代理 运行 Apache Zeppelin,但我在使用 websockets 时遇到了一些问题。
我收到这样的错误:400 HTTP method GET is not supported by this URL
下面是 Chrome 的“网络”选项卡显示的屏幕截图:
我为 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;
}
经过大量的挖掘,我最终得到了这个配置:
location /zeppelin/ {
proxy_pass http://zeppelin:8080/;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_redirect off;
}
location /zeppelin/ws {
proxy_pass http://zeppelin:8080/ws;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
}
效果不错,感谢大家的努力;)