文件上传系统、方法及Nginx服务器的制造方法

文档序号:7807844阅读:163来源:国知局
文件上传系统、方法及Nginx服务器的制造方法
【专利摘要】本发明公开了一种文件上传系统、方法及Nginx服务器,上述文件上传系统包括:Nginx服务器,用于接收来自于客户端上传的文件,在所述文件上传完之后触发PHP后端服务器;所述PHP后端服务器,与所述Nginx服务器相连接,用于将所述文件移动至指定的发布目录下。根据本发明提供的技术方案,使用Nginx服务器的高效处理能力,使客户端在大文件上传中更加稳定,同时基于Nginx服务器对后端PHP处理端口的监听,Nginx在文件上传处理完成后主动触发后端PHP程序进行服务器的业务逻辑的处理,从而使后端服务器的开发更加灵活,处理逻辑更加清晰。
【专利说明】文件上传系统、方法及Nginx服务器

【技术领域】
[0001] 本发明涉及通信领域,具体而言,涉及一种文件上传系统、方法及Nginx服务器。

【背景技术】
[0002] 目前,在音视频社交软件中,需要上传大量的文件,例如,图片贴,视频贴,头像,形 象照,短信等。
[0003] 相关技术中,通常采用稳定的Appache文件上传模块执行文件上传。Apache超文 本传输协议(Hyper Text Transfer Protocol,简称为HTTP)服务器(简称为Apache)是一 个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性 被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的应用程序 编程接口(Application Programming Interface,简称为 API)扩展,将 Perl/Python 等解 释器编译到服务器中。
[0004] 然而,文件上传并非Appache的强项,由于Appache在处理文件上传时处理能力不 足,造成服务器出现大量的等待线程,进而导致服务器资源浪费。


【发明内容】

[0005] 本发明的主要目的在于公开一种文件上传系统、方法及Nginx服务器,以至少解 决相关技术中由于Appache在处理文件上传时处理能力不足,造成服务器出现大量的等待 线程,进而导致服务器资源浪费的问题。
[0006] 根据本发明的一个方面,提供了 一种文件上传系统。
[0007] 根据本发明的文件上传系统包括:Nginx服务器,用于接收来自于客户端上传的 文件,在上述文件上传完之后触发PHP后端服务器;上述PHP后端服务器,与上述Nginx服 务器相连接,用于将上述文件移动至指定的发布目录下。
[0008] 根据本发明的另一方面,提供了一种Nginx服务器。
[0009] 根据本发明的Nginx服务器包括:接收模块,用于接收来自于客户端上传的文件; 上传模块,用于将接收到的上述文件保存到指定的位置;触发模块,用于在上述文件上传完 之后,触发PHP后端服务器将上述文件从上述指定的位置移动至指定的发布目录下。
[0010] 根据本发明的又一方面,提供了 一种文件上传方法。
[0011] 根据本发明的文件上传方法包括:Nginx服务器接收来自于客户端上传的文件; 上述Nginx服务器将接收到的上述文件保存到指定的位置;上述Nginx服务器在上述文 件上传完之后,触发PHP后端服务器将上述文件从上述指定的位置移动至指定的发布目录 下。
[0012] 通过本发明,使用Nginx服务器的高效处理能力,使客户端在大文件上传中更加 稳定,同时基于Nginx服务器对后端PHP处理端口的监听,Nginx在文件上传处理完成后主 动触发后端PHP程序进行服务器的业务逻辑的处理,从而使后端服务器的开发更加灵活, 处理逻辑更加清晰。

【专利附图】

【附图说明】
[0013] 图1是根据本发明实施例的文件上传系统的系统架构图;
[0014] 图2是根据本发明优选实施例的文件上传系统的信息交互示意图;
[0015] 图3是根据本发明实施例的Nginx服务器的结构框图;
[0016] 图4是根据本发明优选实施例的Nginx服务器的结构框图;以及 [0017] 图5是根据本发明实施例的文件上传方法的流程图。

【具体实施方式】
[0018] 下面结合说明书附图对本发明的具体实现方式做一详细描述。
[0019] 图1是根据本发明实施例的文件上传系统的系统架构图。如图1所示,该文件上 传系统包括:Nginx服务器10,用于接收来自于客户端上传的文件,在上述文件上传完之后 触发PHP后端服务器;以及上述PHP后端服务器12,与上述Nginx服务器相连接,用于将上 述文件移动至指定的发布目录下。
[0020] 相关技术中,通常采用稳定的Appache文件上传模块执行文件上传,由于Appache 在处理文件上传时处理能力不足,造成服务器出现大量的等待线程,进而导致服务器资源 浪费。采用图1所示的方法,使用Nginx服务器的高效处理能力,使客户端在大文件上传中 更加稳定,同时基于Nginx服务器对后端PHP处理端口的监听,Nginx在文件上传处理完成 后主动触发后端PHP程序进行服务器的业务逻辑的处理,从而使后端服务器的开发更加灵 活,处理逻辑更加清晰。
[0021] 其中,上述文件可以为图片贴,视频贴,头像,形象照,短信等。
[0022] 在优选实施过程中,客户端通过调用Nginx服务器上传组件的配置地址,同时通 过GET方式将自定义参数传输给Nginx服务器的上传模块。其中,自定义参数可以参见表 1〇
[0023] 表 1
[0024]

【权利要求】
1. 一种文件上传系统,其特征在于,包括: Nginx服务器,用于接收来自于客户端上传的文件,在所述文件上传完之后触发PHP后 端服务器; 所述PHP后端服务器,与所述Nginx服务器相连接,用于将所述文件移动至指定的发布 目录下。
2. 根据权利要求1所述的系统,其特征在于, 所述系统还包括:所述客户端,与所述Nginx服务器相连接,用于在判断本地上传失败 后,向所述Nginx服务器发送文件是否已上传的第一查询指令,并经由所述Nginx服务器接 收来自于所述PHP后端服务器返回的文件上传状态信息; 所述Nginx服务器,用于在接收到所述第一查询指令之后,向所述PHP后端服务器发送 文件是否存在的第二查询指令,并将来自于所述PHP后端服务器的文件上传状态信息转发 给所述客户端; 所述PHP后端服务器,用于在接收到所述第二查询指令后,向所述所述Nginx服务器返 回所述文件上传状态信息。
3. 根据权利要求1所述的系统,其特征在于, 所述PHP后端服务器,还用于在将所述文件移动至所述发布目录之后,返回发布状态 信息; 所述Nginx服务器,还用于将来自于所述PHP后端服务器的所述发布状态信息转发至 所述客户端。
4. 根据权利要求1所述的系统,其特征在于, 所述客户端,还用于将所述文件分割成多个文件包,并分别上传所述多个文件包; 所述PHP后端服务器,还用于将所述多个文件包进行合并,获取所述文件。
5. -种Nginx服务器,其特征在于,包括: 接收模块,用于接收来自于客户端上传的文件; 上传模块,用于将接收到的所述文件保存到指定的位置; 触发模块,用于在所述文件上传完之后,触发PHP后端服务器将所述文件从所述指定 的位置移动至指定的发布目录下。
6. 根据权利要求5所述的服务器,其特征在于, 所述上传模块,还用于接收来自于所述客户端的自定义参数,并传输给所述PHP后端 服务器; 所述Nginx服务器还包括: 对比模块,用于将接收到的文件长度与所述自定义参数中的文件长度进行对比,判断 文件上传是否完成。
7. 根据权利要求6所述的服务器,其特征在于,所述Nginx服务器还包括:检验模块, 用于在判断所述文件上传未完成时,执行所述文件的信息摘要算法校验。
8. -种文件上传方法,其特征在于,包括: Nginx服务器接收来自于客户端上传的文件; 所述Nginx服务器将接收到的所述文件保存到指定的位置; 所述Nginx服务器在所述文件上传完之后,触发PHP后端服务器将所述文件从所述指 定的位置移动至指定的发布目录下。
9. 根据权利要求8所述的方法,其特征在于,还包括: 在所述客户端判断本地上传失败后,所述Nginx服务器接收来自于所述客户端的发送 文件是否已上传的第一查询指令; 所述Nginx服务器向所述PHP后端服务器发送文件是否存在的第二查询指令; 所述Nginx服务器将来自于所述PHP后端服务器的文件上传状态信息转发给所述客户 端。
10. 根据权利要求8所述的方法,其特征在于,在所述Nginx服务器触发PHP后端服务 器将所述文件从所述指定的位置移动至指定的发布目录下之前,还包括: 所述Nginx服务器接收来自于所述客户端通过GET方式传输的自定义参数; 所述Nginx服务器将接收到的文件长度与从所述自定义参数中的文件长度进行对比, 判断文件上传是否完成。
【文档编号】H04L29/08GK104394183SQ201410308845
【公开日】2015年3月4日 申请日期:2014年7月1日 优先权日:2014年7月1日
【发明者】袁孟全, 罗辉, 傅强 申请人:贵阳朗玛信息技术股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1