html - 发送图片数据时413 Request Entity Too Large

标签 html perl apache nginx

我网站的一部分使用该方法从 HTML5 Canvas 中获取图像

 .toDataURL()

然后使用 AJAX 将原始数据作为 POST 消息的一部分发送到我的服务器。 在服务器端,我有一个需要长数据字符串的 cgi 脚本。 我一直收到此错误:

 413 (Request Entity Too Large) 

我正在使用 perl CGI 库,但我没有

 $CGI::POST_MAX 

设置,或者

  $CGI::DISABLE_UPLOADS

设置。 这是由于在服务器中设置的限制吗?我正在使用 apache 和 nginx 作为代理服务器。我担心我无法解决这个问题,因为我正在编写要安装在 bluehost 服务器上的站点。基本上我有两个问题: 1. 有没有办法使用 html5 canvas 方法创建到服务器的文件上传类型的 post 请求? 2. 是否有任何方法可以解决此 413 错误而不涉及扰乱 Apache/Nginx(或其他一些服务器)配置?

最佳答案

如果您在尝试上传时遇到 413 Request Entity Too Large 错误,则需要增加 nginx.conf 或任何其他配置文件中的大小限制。在服务器部分添加 client_max_body_size xxM,其中 xx 是您要允许的大小(以兆字节为单位)。

http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;

    server {
        client_max_body_size 20M;
        listen       80;
        server_name  localhost;

        # Main location
        location / {
            proxy_pass         http://127.0.0.1:8000/;
        }
    }
}

关于html - 发送图片数据时413 Request Entity Too Large,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16096507/

相关文章:

perl - 如何将像 "1..15,16"这样的字符串扩展为数字列表?

apache - Geoserver 建议 - HTTP 状态 400 - 错误请求

javascript - 怎么让图片交替闪烁

javascript - Jquery 选择器找到 DOM 元素,但 native javascript 选择器返回未定义

perl - Perl 中 localtime 函数的反面是什么?

Perl 包整数

php - .htaccess 并使 url 友好

python - "mod_fcgid: error reading data from FastCGI server"用于直接运行时有效的简单 fcgi 脚本

python - 通过文本 beautifulsoup 从第二个 div 中提取文本

javascript - 如何用JS选择所有标签元素