【发布时间】:2014-02-16 19:27:05
【问题描述】:
我想将画布保存为 png。画布大小约为 2000x2000px,canvas.toDataURL() 返回 5.600.000 个字符 (700 KB)。当我尝试将其发送到服务器时,我收到 413 request entity too large 错误。 isn't ajax 帖子有任何大小限制。 In the server,LimitRequestBody 为 2 GB,超出我的需要,post_max_size 为 132M。
知道吗,为什么会出现此错误?
还是有更好的方法来保存图像?我使用fabric.js。我尝试用 php 绘制图像,但我遇到了很多问题。你知道有什么框架可以画出和fabric.js一样的吗?
【问题讨论】:
-
假设您使用较小的文件测试了上传代码并且测试成功,请确保您已为 php 服务器配置了适当的上传限制:post_max_size、upload_max_filesize、max_execution_time。
-
post_max_size 超出了我的需要。 upload_max_filesize 不是必需的,我没有上传任何文件(但它是 2000M 大声笑)。 max_execution_time 是 60。是的,我用较小的图像对其进行了测试。当画布约为 750x750 时,效果很好,我可以保存图像。
-
好的...您的上传目录是否设置为 tmp 目录以外的目录,并且该上传目录是否有足够的磁盘空间。您可能会尝试将 post_max_size 的大小减小到合理的值(可能是 16M)。您是否正在运行其他需要配置的组件(如 nginx)?实际上,在 stackoverflow 之类的论坛上诊断网络配置问题非常困难......
-
5,600,000 个字符不是 700KB,而是 ~ 5.5MB,你是怎么计算出来的?
标签: javascript php ajax canvas fabricjs