Nginx 配置对 Jupyter Notebook 的反向代理

发表于 : 2018-02-03   · CC BY-NC-SA 4.0 ·   4622 人浏览

昨天搭建了Jupyter Notebook本机运行.
发现做了反向代理,python内核是断开的.
Jupyter官网也没有实例,网上也找了很久,终于经过一天的搜索和研究发现了
Nginx 还需要设置上对于 WebSocket 的支持
Jupyter Notebook 的 Python Notebook 还用到了 WebSocket
下面是我的反向配置:

location / 
{
    proxy_pass http://192.168.91.138:18882;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header REMOTE-HOST $remote_addr;
    
    #缓存相关配置
    #proxy_cache cache_one;
    #proxy_cache_key $host$request_uri$is_args$args;
    #proxy_cache_valid 200 304 301 302 1h;
    
    #持久化连接相关 WebSocket 配置
    proxy_connect_timeout 30s;
    proxy_read_timeout 86400s;
    proxy_send_timeout 30s;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";        
    expires 12h;
}

具体可以去Nginx官网查看 https://www.nginx.com/blog/websocket-nginx/

Nginx 反向代理 Jupyter Jupyter Notebook WebSocket