Nginx 配置
location /jupyter/ {
proxy_pass http://127.0.0.1:8888;
proxy_set_header Host 127.0.0.1;
proxy_set_header X-Real-Scheme $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# WebSocket support
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
proxy_read_timeout 120s;
proxy_next_upstream error;
}
说明:proxy_set_header Host 127.0.0.1;表明host设置为本地,以免被jupyter屏蔽。
Jupyter 配置
没有生成密码的话需要用下面的命令生成密码:
jupyter notebook password
修改/home/{user}/.jupyter/jupyter_notebook_config.py文件
,如果没有则需要用下面的命令生成:
jupyter notebook --generate-config
jupyter_notebook_config.py文件中需要修改以下部分:
c.NotebookApp.base_url = '/jupyter/'
c.NotebookApp.ip='127.0.0.1' # 注意这里防止远程直接用端口访问。
c.NotebookApp.open_browser = False
c.NotebookApp.port =8888 #可自行指定一个端口, 访问时使用该端口
c.NotebookApp.allow_remote_access = True # 如果前面Host用$host就需要设置设一项
本文详细介绍了如何通过Nginx配置实现Jupyter Notebook的安全代理访问,包括Nginx的location配置、WebSockets支持及Jupyter的密码生成、配置文件修改等内容。

1381

被折叠的 条评论
为什么被折叠?



