解决nginx上传模块nginx_upload_module传递GET参数-阿里云开发者社区

开发者社区> double2li> 正文

解决nginx上传模块nginx_upload_module传递GET参数

简介: 解决nginx上传模块nginx_upload_module传递GET参数的方法总结   最近用户反映我们的系统只能上传50M大小的文件, 希望能够支持上传更大的文件。 很显然PHP无法轻易实现大文件上传, 因为会有各种各样的郁闷问题, 比如服务器超时等, 那么如何解决呢? 我想到了nginx...
+关注继续查看

解决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传递过来的参数!

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
gdy
jQuery Ajax传值给Servlet,在Servlet里Get接受参数乱码的解决方法
  最近在学jquery ui,在做一个小功能的时候需要将前台的值获取到,通过Ajax传递给Servlet,然后再在返回数据结果,但是在Servlet接受参数的时候,通过后台打印,发现接受乱码,代码示例如下: public void doGet(HttpServletRequest reque...
1380 0
Nginx解决跨域、大文件、负载均衡和域名管理的问题(亲测真实有效)
Nginx Nginx在解决跨域、负载均衡和域名管理的问题上,有非常好的作用!值得应用。 在工作和学习中,前后端交互的时候,时常会需要做跨域的事情,这个时候,有两种方式,一种是服务端代码程序中去解决跨域,这是一种比较愚蠢的方式,推荐使用Nginx进行跨域的操作。
2297 0
+关注
double2li
一个在IT行业摸爬滚打的老司机
2870
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载