通过web远程访问服务器的ipython
如果想同过一个Web浏览器的方式远程访问服务器上的ipython notebook sever,可通过下面的步骤实现。
服务器:ubuntu14.04 server
客户端:windows/unix/linux均可+浏览器
- 创建certificate 文件 和 hash密码
In [1]: from IPython.lib import passwd
In [2]: passwd()
Enter password:
Verify password:
Out[2]: 'sha1:67c9e60bb8b6:9ffede0825894254b2e042ea597d771089e11aed' - 使用openssl创建一个自签名证书,由于是自签名所以浏览器会提示警告,选择信任exception即可。如果不想引起警告,需具备合格证compliant certificate,可参照tutorial。
$ openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout mycert.pem -out mycert.pem
此处需要注意到的是记住你生成的证书mycert.pem的路径,另外,由于你启用了ssl支持,所以在访问notebook server时需要用https://而非http://
- 通过ssl使得你通过浏览器发送的密码是加密的,你可以在安全协议模式下使用自签名的认证来启用notebook
$ ipython notebook --certfile=mycert.pem
- 为notebook定制一个配置文件,此配置是基于用户而非全局的。命令执行后会提示生成的文件和位置。
$ ipython profile create nbserver
- 修改刚才create nbserver时生成的ipython_notebook_config.py文件
#,默认情况下ipython_notebook_config.py位于~/.ipython/profile_nbserver/目录下 c = get_config() # Kernel config
c.IPKernelApp.pylab = 'inline' # 使用pyplot绘制功能 # Notebook config
c.NotebookApp.certfile = u'/absolute/path/to/your/certificate/mycert.pem'
c.NotebookApp.ip = '*'
c.NotebookApp.open_browser = False
c.NotebookApp.password = u'sha1:bcd259ccf...[之前生成的hash密码]'
# It is a good idea to put it on a known, fixed port
c.NotebookApp.port = 8035 #选择一个端口 - 最后在远程服务器键入命令
ipython notebook --profile=nbserver
之后便可在本地机器上使用Web浏览器访问notebook了
https://[IP or your.host.com]:8035
(此处比较诡异的是需要加一位才对(https://[IP or your.host.com]:8036),后来才发现,8035已经被一个程序占用了,ipython会另选一个端口号使用)
安装特定版本的Package请使用
pip install ipython==2.3.0
小记:ipython版本若是为4.0会出错,因为4.0版本为开发版,使用上面命令ipython profile create nbserver时不会创建ipython_notebook_config.py(坑。。。),最后终于在http://r97846001.blog.ntu.edu.tw/2015/07/09/ipython-importerror-no-module-named-jupyter_notebook-notebookapp/发现是版本的问题,所以需要安装适用的版本,但是!!!不需要按照他说的下载源文件或release安装的。。。,之前使用了pip install ipython=2.3.0发现不行,故狂搜乱找以为是其他问题,最后发现原来要用双等号啊~泪。。。http://nu-no.nl/ipython-server-cant-launch-no-module-named-notebook-notebookapp/,正所谓,“山重水复疑无路,柳暗花明又一村”,写次小记,特此纪念。

通过web远程访问服务器的ipython的更多相关文章
- 服务器(Ubuntu)远程访问ipython notebook(服务器运行ipython notebook 本地浏览器访问)
准备工作 首先要安装 ipython 推荐直接 Anaconda 搞起(装在服务器). Anaconda 帮你集成N多python相关环境(包),省得你再手动咔咔一顿安装 服务器启动ipython n ...
- 在windows上远程访问服务器jupyter notebook
需求: 之前在服务器上只能运行完整的python文件,而不能实现jupyter notebook的交互模式,通过在本地浏览器上远程访问服务器上的jupyter notebook,这样不就能有一个很棒的 ...
- Nodejs实现web静态服务器对多媒体文件的支持
前几天,一个同事说他写的web静态服务器不支持音视频的播放,现简单实现一下. 原理:实现http1.1协议的range部分. 其实这一点都不神秘,我们常用的下载工具,如迅雷,下载很快,还支持断点续传, ...
- [置顶] java web 动态服务器
写了一个java web 动态服务器,主要通过内部类来实现,动态类使用了外部类,采用了 classforname 实例化,动态类的构造方法不能带参数, 效果都出来了,分享给有需要的 朋友.判断做的不够 ...
- web server服务器
使用最多的 web server服务器软件有两个:微软的信息服务器(iis),和Apache. 通俗的讲,Web服务器传送(serves)页面使浏览器可以浏览,然而应用程序服务器提供的是客户端应用程序 ...
- express搭建简易web的服务器
express搭建简易web的服务器 说到express我们就会想到nodejs,应为它是一款基于nodejs平台的web应用开发框架.既然它是基于nodejs平台的框架那么就得先安装nodejs. ...
- office web apps 部署-搭建office web apps服务器
二.搭建office web apps服务器 相关文件可以去焰尾迭分享的百度网盘下载,下载地址:http://pan.baidu.com/s/1o6tCo8y#path=%252Foffice%252 ...
- 5.Nginx作为web缓存服务器
Nginx作为web缓存服务器 从0.7.48版本开始,Nginx支持类似Squid的缓存功能.Nginx的web缓存服务主要由proxy_cache相关命令集合fastcgi_cache相关命令集构 ...
- WEB站点服务器安全配置
WEB站点服务器安全配置 本文转自:i春秋社区 // 概述 // 熟悉网站程序 // 更改默认设置的必要性 // 目录分析与权限设置技巧 // 防止攻击其他要素 // 公司官网不可忽视的安全性 ...
随机推荐
- android的二进制和十六进制的相互转换工具类(一):
二进制和十六进制的相互转换工具类: package com.gzcivil.utils; public class BinStr { /** * 将二进制转换成16进制 * @param buf * ...
- How to close existing connections to a DB
use master ALTER DATABASE YourDatabase SET SINGLE_USER WITH ROLLBACK IMMEDIATE --do you stuff here A ...
- XenDesktop 5 PowerShell SDK Primer – Part 2 – Creating Hypervisor Connections and Hosts
One of the new changes that you will see in XenDesktop 5 is the configuration of hypervisor connecti ...
- 从Quartz时间设置问题说起
已经好久没有来写点啥了,原因有很多,不过最主要的还是自己很懒很懒,今天终于意识到问题的严重性了.所以就来了.今天的这个问题也是前不久刚刚遇到的问题.先不啰嗦,说重点了. 一.问题描述 定时任务项目发布 ...
- JVM学习之Eclipse输出GC日志
Java应用启动时,可以通过设置verbose参数来输出JVM的gc情况,命令如下:-verbose:gc或者-XX:+PrintGC在Eclipse中可以通过Run As|Run Configura ...
- Python进阶之面向对象编程概述
Python面向对象编程(一) .note-content {font-family: "Helvetica Neue",Arial,"Hiragino Sans GB& ...
- hadoop笔记之Hive的数据类型
Hive的数据类型 Hive的数据类型 前面说过,Hive是一个数据仓库,相当于一个数据库.既然是数据库,那么就必须能创建表,既然有表,那么当中就有列,列中就有对应的类型 总的来讲,hive的数据类型 ...
- Map转Bean小工具
public static <T> T converter(Map<String, Object> map, Class<T> clz) { T obj = nul ...
- JS的匿名函数和递归应用
今天有项目需要用到JS的递归,开始按照php的实现方法,发现不行,后来只能使用arguments.callee. 简单的例子,如下 var act = 'if(num <= 1){return ...
- PHP fopen和fwrite函数实现创建html页面
思路 用fopen函数和fread函数得到模板,然后用str_replace函数替换模板标签为变量,最后用fwrite函数输出新的HTML页面 index.html模板页面 <!DOCTYPE ...