我将nginx设置为node.js的反向代理。对于文件上传,我要求NGINX将请求转发到node.js,但对于文件下载,我希望由NGINX完成。我可以使用GET请求来处理它。nginx提供静态文件以响应POST请求
但我真的想通过POST请求验证会话,然后提供文件。请告知如何实现这一点。
这里是我的 “默认” 的配置为NGINX位于下文件/ etc/nginx的/网站可用:
server {
listen 3000;
server_name X.Y.Z;
root /mnt/Files/;
error_log /home/nginx/logs/error.log debug;
access_log /home/nginx/logs/access.log;
client_max_body_size 20M;
location /download/* {
root /mnt/Files/;
access_log on;
autoindex on;
set $var1 = $1
try_files $uri $uri/ =404;
}
location /upload {
proxy_pass http://127.0.0.1:3001;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
实例的形式,我将提交将具有以下字段:
用户名:USER1 密码:pass1 子文件夹: 文件:
https://www.nginx.com/resources/wiki/start/topics/examples/x-accel/ – zerkms
谢谢!这些例子都会派上用场。 – Pankaj
为什么我会得到-1? – Pankaj