解决nginx上传模块nginx_upload_module传递GET参数的方法总结
最近用户反映我们的系统只能上传50M大小的文件, 希望能够支持上传更大的文件。
很显然PHP无法轻易实现大文件上传, 因为会有各种各样的郁闷问题, 比如服务器超时等, 那么如何解决呢? 我想到了nginx_upload_module!!!
如何安装nginx_upload_module? 请看这里:nginx_upload_module安装使用教程
解决了大文件上传之后又遇到了新问题, 我们希望通过nginx_upload_module给后台php处理程序以GET方式传输数据(当然nginx_upload_module支持POST数据传递, 却不支持GET)
下面我解决nginx_upload_module使用GET传参的方法公布出来,希望能够帮助到和我一样需求的朋友!
修改nginx配置文件(程序站点配置文件test.conf)
1
2
3
4
5
6
7
|
location /upload_waynerqiu { upload_pass_args on; upload_resumable on; upload_pass /up_test .php?$args; #此处省略掉详细配置… #如需要详细的参考可查看http://waynerqiu.com/7/136.html } |
html表单代码(up_test.php,此页面即作为表单页同时也负责nginx_upload_module回调页面)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
< html > < head > < title >Test upload</ title > </ head > < body > <? php print_r($_REQUEST); ?> < h2 >Select files to upload</ h2 > < form enctype = 'multipart/form-data' action = '/upload_waynerqiu?who=abc&she=def' method = 'post' > < input type = 'file' name = 'file1' >< br > < input type = 'submit' name = 'submit' value = 'Upload' > < input type = 'hidden' name = 'test' value = 'value' > </ form > < a href = '/up_test.php' >back</ a > </ body > </ html > |
从以上两段代中我们可以看出我试使用/upload_waynerqiu?who=abc&she=def 将who=abc&she=def传递到 后台nginx回调程序 up_test.php中, 这个过程中我使用了nginx变量 $args(更多nginx变量请看这里:http://waynerqiu.com/7/138.html)。
经过测试之后发现参数可以完美的传递来了!
上图中红线部分即为使用nginx_upload_module传递过来的参数!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
2013-12-17 同步、异步、阻塞和非阻塞的概念
2013-12-17 关于CreadThread()与CloseHandle()
2013-12-17 Debugging with GDB 用GDB调试多线程程序
2013-12-17 关于delete和delete[]
2013-12-17 STL,ATL,WTL之间的联系和区别
2013-12-17 Makefile教程
2013-12-17 OnPaint()函数的作用原理