python - 请求实体太大:尽管配置了 max_body_size,但无法保存大型 Jupyter 笔记本
问题描述
我有一个 JupyterLab 笔记本,当我尝试保存它时会引发以下错误。
File Save Error for ld_matrix.ipynb
Invalid response: 413 Request Entity Too Large
笔记本包含一个图像图(通过Bokeh image plot),大约 200 KB(所以,不是很大)。
我尝试在 Jupyter 配置中增加c.NotebookApp.max_body_size
(请参阅Jupyter 配置文档),但这没有帮助。我也试过c.NotebookApp.max_buffer_size
也无济于事。
Jupyter 版本:
jupyter core : 4.7.0
jupyter-notebook : 6.1.5
jupyter client : 6.1.7
jupyter lab : 2.2.9
解决方案
抱歉,我只有一个(潜在的)部分解决方法。当我尝试使用localtunnel连接到我的服务器时,我遇到了同样的问题,但是当我进行 ssh 端口转发时,我没有遇到问题。
我jupyter --version
的给出如下:
jupyter core : 4.6.3
jupyter-notebook : 6.1.4
qtconsole : 4.7.7
ipython : 7.19.0
ipykernel : 5.3.4
jupyter client : 6.1.7
jupyter lab : 2.2.6
nbconvert : 6.0.7
ipywidgets : 7.5.1
nbformat : 5.0.8
traitlets : 5.0.5
我启动笔记本
nohup jupyter notebook --no-browser --port=8889
我启动 ssh 端口转发
ssh -L 8889:127.0.0.1:8889 user@example.com
这user@example.com
是我可以访问的远程服务器上的帐户,我希望在其上运行笔记本服务器。
然后,我通过本地计算机的浏览器访问 localhost:8889 来访问笔记本。它们可以正确编辑和自动保存。
要使用 localtunnel 访问笔记本,我调用
nohup npx localtunnel --port 8889 --subdomain mysubdomain
然后尝试使用mysubdomain.loca.lt
. 当我保存笔记本时,右上角出现一个棕色框,上面写着“请求实体太大”。有时当我清除所有输出时,我可以保存但并非总是如此。我确实更改了您更改的两个设置(实际上我的笔记本低于旧限制),但这没有帮助。为了确保确实设置了这些参数,我还尝试修改启动笔记本服务器的命令:
nohup jupyter notebook --no-browser --port=8889 --NotebookApp.max_buffer_size=numberofbytes --NotebookApp.max_body_size=numberofbytes
我不明白为什么 SSH 隧道会神奇地为我解决这个问题!理想情况下,我会让其他人只使用笔记本密码而不是我在远程服务器上的帐户密码来编辑我的笔记本,因此我希望使用像 localtunnel 这样的服务。
推荐阅读
- mysql - MYSQL在一分钟内发现重复
- .net - 运行时创建不同的 EDMX 模型
- python - 在 Python 中创建不可变对象
- flutter - 我不能使用 Icon(Icons.star, color: Colors.green[500]),错误
- wordpress - 单击后可以从 $_SESSION 存储值
- amazon-web-services - 如何在 Cloudformation 模板条件中使用 AWS SSM 参数存储值?
- vue.js - 如何在 Vue 中将组件的整个数据属性设置为保持反应性的新对象?
- r - Place text next to dodged points
- c++ - Visual Studio C++ cannot find OpenCV-Contrib modules
- android - 与 VirtualBox 机器一起运行 Android 模拟器