使用openresty的lua-resty-upload实现文件上传
服务端:使用openresty的lua-resty-upload模块来实现文件上传
接受前端的上传请求,将处理好的文件保存起来
nginx配置
注意:
- 文件存储路径
- 指定上传逻辑代码路径
在nginx上添加一个server
#上传文件服务
server
{
listen 19999;
set $store_dir "/data/vue/fffoa/"; # 文件存储路径
location /upfile {
content_by_lua_file conf/lua/upload.lua; # 实现文件上传的逻辑
}
location /download {
autoindex on;
autoindex_localtime on;
alias /data/vue/fffoa/;
index index.html;
}
access_log logs/uploadfile_access.log main;
error_log logs/uploadfile_error.log crit;
}
实现上传逻辑代码 conf/lua/upload.lua
注意:我使用的是openresty,可以直接引用resty.upload等lua库,如果你是nginx,还需要找到upload.lua、cjson库
-- upload.lua
--==========================================
-- 文件上传
--==========================================
local upload = require "resty.upload"
local cjson = require "cjson"
local chunk_size = 4096
local form, err = upload:new(chunk_size)
if not form then
ngx.

本文详细介绍了如何使用OpenResty的lua-resty-upload模块在服务器端实现文件上传功能,包括配置步骤、上传逻辑代码和测试方法。重点涉及nginx配置、文件存储路径设置及错误处理。
699

被折叠的 条评论
为什么被折叠?



