对nginx上传文件的第三方实现nginx-upload-module的修改

        nginx官方推荐的第三方上传模块nginx-upload-module在nginx-1.3.9后已经不能编译通过,究其原因是因为nginx-1.3.9废弃了ngx_http_request_body_t中的to_write成员指针。

        github上有人解决了这个问题,参考https://github.com/vkholodkov/nginx-upload-module/issues/41的讨论,davromaniak给出了解决方案。但是davromaniak的解决方案有些冗余,而hongzhidao给出更加清晰的解决方案,参考https://github.com/hongzhidao/nginx-upload-module。测试该方案没有问题,但是有个遗留的问题:在上传文件时,必须手动创建/tmp/0~/tmp/9目录,用于存放上传的文件。但是,如果在配置文件中配置upload_store /tmp 1 2 3;时,手动创建目录是很麻烦的,现在我在hongzhidao的基础上解决了这个问题,上传文件时不用手动创建存放上传文件的目录,另外我还修复了代码中限速失效的bug,参考https://github.com/winshining/nginx-upload-module

        欢迎下载测试。

        2019-01-08更新:有网友反馈编译时找不到md5.h文件,测试了一下,从nginx-1.11.2起,NGX_HAVE_OPENSSL_MD5_H等宏已经被删除,取而代之的是NGX_OPENSSL宏,它可以覆盖文件里的几个宏,已修复问题。注意,configure的时候需要添加选项--with-http_ssl_module,否则不会启用NGX_OPENSSL宏。

评论 19
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值