iframe标签嵌入Jupyter 跨域问题

在Windows系统中,使用iframe嵌入Jupyter时遇到Content Security Policy错误。解决方法是在jupyter_notebook_config.py中设置`Content-Security-Policy`为`frame-ancestors 'self' *`。此外,介绍了生成Jupyter密钥和配置文件以实现远程访问的步骤,包括使用`passwd()`生成密钥和使用`jupyter notebook --generate-config`创建配置文件。

在window系统中,我想使用iframe嵌入jupyter,会报错:

an ancestor violates the following Content Security Policy directive: “frame-ancestors ‘self’

修改jupyter的配置文件upyter_notebook_config.py,再文件的最后添加一行代码:

c.NotebookApp.tornado_settings = { 'headers': { 'Content-Security-Policy': "frame-ancestors 'self' *" } }
 

有些人的配置方式是“*”直接换为了自己的ip地址,我尝试了,没有效果,上面方式是我成功地。对于jupyter的一些其他配置,下面做了一些解释

Jupyter notebook作为一款交互式笔记本,可以说是数据处理编程的神器,web式的访问方式,非常便利。在电脑上安装后默认即可通过web访问,但既然web可以访问,那也可以部署在服务器上,在不同的PC机上访问了。下面就介绍下如何修改配置文件,使得可以远程访问。本地的安装配置这里不描述,网上有很多,主要说一下远程配置。

1)生成密钥

在ipython命令行下使用命令passwd()

在cmd中使用ipython,进入ipython环境

from notebook.auth import passwd

passwd()

设定密码,生成一个sha1的密钥,生成的密钥格式如下:

'sha1:f9030dd55bce:75fd7bbaba41be6ff5ac2e811b62354ab55b1f63'

2)生成jupyter的配置文件

 在cmd中使用 jupyter notebook --generate-config

这时候会生成配置文件,在 ~/.jupyter/jupyter_notebook_config.py

修改配置文件,添加下面内容,放开IP限制,并添加访问密码。

#允许谁可以访问你的notebook
c.NotebookApp.ip='*'
#上面你所通过passwd()设置的密码字符串
c.NotebookApp.password = u'sha1:f9030dd55bce:75fd7bbaba41be6ff5ac2e811b62354ab55b1f63'
#是否打开默认浏览器
c.NotebookApp.open_browser = False
#打开端口
c.NotebookApp.port =8888

此时,在PC机的浏览器输入网址,打开后输入密码,即可使用

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值