资源介绍
Nginx是一个高性能的HTTP和反向代理服务器,也是IMAP/POP3/SMTP代理服务器,是由俄罗斯人lgor Sysoev开发,支持模块加载和卸载,其中upload_module和upload_progress_module就是第三方开发的模块,并没有加入到Nginx的源码中,upload_module是上传文件到服务器的模块,upload_progress_module是监听和报告文件上传进度模块。其大概的思想是,客户端通过file表单向Nginx发送http请求,请求中附带名为X-Progress-ID的随机数来标明上传文件的id,请求头如:http://hostname/upload?X-Progress-ID=id。upload_progress_module通过该id来标示上传文件的状态,客户端可以通过http://hostname/progress?X-Progress-ID=id来请求查看文件上传进度状态,将其封装成JSON格式,返回给客户端。我们要做的工作就是要将这两个模块加入到Nginx中,提供文件上传的服务。