web-dev-qa-db-ja.com

SSL:パブリックJuypterサーバーのセットアップ時にWRONG_VERSION_NUMBER

ノートブックをホストするように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)

どうしたの?

15
AlexLordThorsen

問題は非常に単純な問題であり、実際に考えているよりも理解に時間がかかりました。

デフォルトでは、コンソールから提供されるアドレスは、ルーティングするhttpsアドレスです。 httpsは機能します。

でも入ったら

your_url.com

http://your_url.com。サーバーにTSL証明書を設定した場合、httpルートは機能しなくなり、Jupyterにはhttpsへの再ルーティングが付属していません。

回避策:代わりにhttpsを使用してください

私の長期的なソリューション結局、Apacheの背後でJupyterノートブックをホストしていました。

20
AlexLordThorsen