我使用nginx upload module接受PHP应用程序的大型上传。我在this blog post之后配置了nginx(根据我的需要进行了修改)。
这是我的nginx配置的适用部分:
server {
# [ ... ]
location /upload {
set $upload_field_name "file";
upload_pass /index.php;
upload_store /home/example/websites/example.com/storage/uploads 1;
upload_resumable on;
upload_max_file_size 0;
upload_set_form_field $upload_field_name[filename] "$upload_file_name";
upload_set_form_field $upload_field_name[path] "$upload_tmp_path";
upload_set_form_field $upload_field_name[content_type] "$upload_content_type";
upload_aggregate_form_field $upload_field_name[size] "$upload_file_size";
upload_pass_args on;
upload_cleanup 400-599;
client_max_body_size 200M;
}
}
在客户端JavaScript中,我使用8MB块。
通过这种配置,我可以上传任何一块或更小的文件。但是,当我尝试上传任何一个以上块的文件时,我从服务器获取的每个中间块的响应都是空白的,最后一个块触发了对PHP应用程序的调用而没有任何传入的POST
数据
我错过了什么?