nginx上传模块nginx_upload_module使用

1、安装模块

 

1 cd /data/software
3 tar zxvf nginx_upload_module-2.0.12.tar.gz

进入nginx源码目录 

1 ./configure --with-http_stub_status_module \ --add-module=/data/software/nginx_upload_module-2.0.12
2 make#新增模块,不用make install
3 mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
4 cp ./objs/nginx /usr/local/nginx/sbin/nginx

 

2、修改配置文件,在server中增加一下内容

 

01 location /upload {
02     upload_pass   /info.php;#上传完成后端接受处理文件
03     upload_store /data/uptmp;#上传文件夹
04     upload_limit_rate 1024k;# 限制上传速度
05     upload_set_form_field "${upload_field_name}_name" $upload_file_name;#文件名称
06     upload_set_form_field "${upload_field_name}_content_type" $upload_content_type;#文件类型
07     upload_set_form_field "${upload_field_name}_path" $upload_tmp_path;#上传到的路径
08     upload_aggregate_form_field "${upload_field_name}_md5" $upload_file_md5;#md5
09     upload_aggregate_form_field "${upload_field_name}_size" $upload_file_size;#文件大小
10     upload_pass_form_field "^submit$|^description$";
11     #如果希望把所有的表单字段都传给后端可以用upload_pass_form_field "^.*$";
12 }

 

 

3、前端代码

up.html

01 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
02 <html xmlns="http://www.w3.org/1999/xhtml">
03 <head>
04 <title>无标题文档</title>
05 </head>
06 <body>
07 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
08 <form name="upload" method="POST" enctype="multipart/form-data" action="/upload"><!--提交到上面的/upload-->
09 <input type="file" name="file">
10  
11 <input type="submit" name="submit" value="Upload">
12 </form>
13 </body>
14 </html>

info.php

1 <?php
2     header("Content-Type:text/html; charset=utf-8");
3     print_r($_POST);

上传会返回如下图数据

nginx上传模块nginx_upload_module使用

 

from:http://foooy.me/nginx/158.html

上一篇:Fluent NHibernate 1.0 Rc发布


下一篇:Jquery ajaxfileupload.js结合.ashx文件实现无刷新上传