1

在我的 Amazon Web Services EC2 实例上安装 ipython 后,我正在尝试按照此处找到的说明为 iPython HTML 笔记本运行公共服务器:http: //ipython.org/ipython-doc/stable/interactive/htmlnotebook.html( '快速操作方法:运行公共笔记本服务器')。所以我有一个散列密码和一个自签名的 ssl 证书。

(sci_3.3.2)ubuntu@ip-xx:~/.ipython/profile_nbserver$ ipython3 notebook --profile=nbserver
[NotebookApp] Using existing profile dir: '/home/ubuntu/.ipython/profile_nbserver'
[NotebookApp] Serving notebooks from /home/ubuntu/.ipython/profile_nbserver
[NotebookApp] The IPython Notebook is running at: https://[all ip addresses on your system]:9999/
[NotebookApp] Use Control-C to stop this server and shut down all kernels.

假设我的 EC2 实例的公共 DNS 名称是“ec2-12345.compute.amazonaws.com”,如果我在我的 Web 浏览器中输入 URL“ https://ec2-12345.compute.amazonaws.com:9999 ”,它会挂起给予: 此网页无法使用

如果我使用 HTTP 也会发生同样的事情(在这种情况下,我在启动笔记本服务器时不使用 ssl 证书)。此时,我已经在 EC2 安全组设置中创建了允许 HTTP 和 HTTPS 的入站规则。但是在创建这些时,分别分配了端口 80 和 443,我认为因为这些都不是端口 9999,正在为 ipython 笔记本提供服务,所以上面的 url 只是挂起。

因为在为 HTTP 和 HTTPS 创建入站规则时没有选择端口号的选项,所以我尝试创建自定义 TCP 规则,它允许选择端口号,在选择端口 9999 后,我发现我可以访问 ipython notebook我的网络浏览器。但是,我在网址中看到了这一点:

跨https

在我的网络浏览器中,这是:

龙卷风警告

在终端。这是否意味着我没有使用 https?这是 ipython 文档的意图吗?如果没有,有没有办法在为 HTTP 和 HTTPS 创建入站规则时选择端口号?

当我从仪表板打开一个笔记本时,我在终端中看到了这个:

tcp

这似乎证实确实使用了 TCP 而不是 HTTPS。

我不熟悉网络协议和端口。非常感谢任何指导。

4

1 回答 1

0

HTTP 和 HTTPS 都是 TCP/IP 协议:

http://www.w3schools.com/tcpip/tcpip_protocols.asp

我还发现了证实这一点的视频:http: //youtu.be/JMedTCa5lec?t= 4m29s

并且 url 中的红色划掉的 https 反映了未经验证的证书(可能是因为它是自签名的)。

于 2013-08-05T09:34:07.407 回答