设置公共Juypter服务器时SSL:WRONG_VERSION_NUMBER

时间:2015-12-17 22:37:41

标签: ssl jupyter jupyter-notebook

我正在设置Juypter服务器来托管笔记本电脑。

/home/user/.jupyter/notebook_configuration.py

c.NotebookApp.certfile = u'/home/user/.jupyter/mycert.pem'
c.NotebookApp.keyfile = u'/home/user/.jupyter/mykey.key'

如果我在控制台上跑了

jupyter notebook --ip="ip_address" --port=8000 --certfile=mycert.pem --keyfile mykey.key

服务器和证书有效!

但是,当我设置DNS条目并尝试路由到服务器时,我遇到了这个错误

SSL Error on 10 ('ip_address', 63748): [SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:600)

发生了什么事?

1 个答案:

答案 0 :(得分:19)

问题是一个非常简单的问题,让我想出的时间比实际应该的要长。

默认情况下,控制台为您提供的地址是路由到的https地址。 https有效。

但是如果你输入

your_url.com

它会带你去http://your_url.com。如果您为服务器设置TSL证书,则您的http路由不再起作用,并且Jupyter不会自动重新路由到https

解决方法:改用https

我的长期解决方案I ended up hosting my Jupyter notebook behind apache.