我无法获得大块的上传工作。 即使在重新编译Nginx之后。 我在Ubuntu 12.04上使用nginx 1.1.19。 我下载了nginx 1.1.19的源代码和模块进行分块上传,编译如下。
./configure --prefix=/etc/nginx --sbin-path=/usr/sbin/nginx --user=www-data --group=www-data --conf-path=/etc/nginx/nginx.conf --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-log-path=/var/log/nginx/access.log --lock-path=/var/lock/nginx.lock --pid-path=/var/run/nginx.pid --with-debug --with-http_gzip_static_module --with-http_ssl_module --with-sha1=/usr/include/openssl --with-md5=/usr/include/openssl **--add-module=path-to-chunkin-module --with-pcre=/path-to-pre-library.**
编译后,我得到这个:
Configuration summary + using PCRE library: /home/www-data/pcre-8.10 + using system OpenSSL library + md5: using OpenSSL library + sha1: using OpenSSL library + using system zlib library nginx path prefix: "/etc/nginx" nginx binary file: "/etc/nginx/sbin/nginx" nginx configuration prefix: "/etc/nginx" nginx configuration file: "/etc/nginx/nginx.conf" nginx pid file: "/var/run/nginx.pid" nginx error log file: "/var/log/nginx/error.log" nginx http access log file: "/var/log/nginx/access.log" nginx http client **request body temporary files: "client_body_temp"** **nginx http proxy temporary files: "proxy_temp"** nginx http fastcgi temporary files: "/var/lib/nginx/fastcgi" nginx http uwsgi temporary files: "uwsgi_temp" nginx http scgi temporary files: "scgi_temp"
即使我不需要代理模块,我也无法使用--without-http_proxy-module将其删除。 之后,我重新启动了nginx。
nginx -V显示带chunkin模块和pcre的编译模块。 但块上传仍然无法正常工作。 我configuration了sites-enabled/default和添加
chunkin on; error_page 411 = @my_411_error; location @my_411_error { chunkin_resume; }
但大块上传仍然存在。 curl输出显示:
curl -I服务器ipaddress
HTTP/1.1 200 OK Server: nginx Date: Tue, 17 Jul 2012 20:31:56 GMT Content-Type: text/html Content-Length: 4448 Last-Modified: Mon, 11 Jun 2012 18:02:19 GMT Connection: keep-alive Accept-Ranges: bytes
访问日志中出现了411错误 。
在/etc/nginx.conf中设置client_max_body_size并重新启动nginx后解决