jupyter notebook 与 Nginx 集成

1. 配置 jupyter notebook

vim /roo/.jupyter/jupyter_notebook_config.py

编辑 C.NotebookApp.base_url

upload successful

注意:这里一定要给个路径,不能直接使用 / 作为路径!原因是 nginx 需要根据路径进行解析,如果使用 / 作为路径,nginx的配置会非常麻烦

2. 配置 Nginx

        location ^~ /ipython/ {
        proxy_pass  http://www.domain.com:port;     
        proxy_set_header    Referer   http://www.isaac-li.com:9527;  
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        # WebSocket support
        proxy_http_version 1.1;
        proxy_set_header Upgrade "websocket";
        proxy_set_header Connection "Upgrade";
        proxy_read_timeout 86400;
        proxy_redirect off;

    }


    location ~* /(api/kernels/[^/]+/(channels|iopub|shell|stdin)|terminals/websocket)/? {
       proxy_pass  http://www.domain.com:port;
       proxy_set_header    Referer   http://www.isaac-li.com:9527;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        # WebSocket support
        proxy_http_version 1.1;
        proxy_set_header Upgrade "websocket";
        proxy_set_header Connection "Upgrade";
        proxy_read_timeout 86400;
        proxy_redirect off;
} 

www.domain.com:port 需要根据实际情况换成自己的域名和端口号,端口号为 jupyter notebook 服务端口