美文网首页
Nginx的上传文件问题

Nginx的上传文件问题

作者: _Cappuccino_ | 来源:发表于2019-05-09 21:53 被阅读0次

问题描述:最近在做一个django项目的时候,开发环境已经完备,部署已经完备
自己的配置文件基本为最简单的模式,代码如下:

server{
    listen  80;    # 指定端口
    server_name _;   #指定域名
    charset utf-8;
    client_max_body_size 75M;

    access_log /home/ubuntu/nginx_access.log;
    error_log /home/ubuntu/nginx_error.log;

    # 这个是非常重要的!!!!!
    location / {
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Host $server_name;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_pass http://127.0.0.1:9000;
    }

    location /static {
        root /home/ubuntu/Com/HengShan;
        #alias /home/ubuntu/Com/HengShan/static;
    }
}

测试与使用:
使用自定义9000端口时,所有业务正常执行
使用Nginx代理静态文件之后,上传文件直接出现500,且没有错误日志

一下午都忙得头大,找了一个Java高手帮忙,直接扔过来一串代码,告诉我直接粘贴到配置文件中
如下所示:

gzip  on;
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header  https $https;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 50m; #缓冲区代理缓冲用户端请求的最大字节数,可以理解为保存到本地再传给用户
client_body_buffer_size 256k;
client_header_timeout 3m;
client_body_timeout 3m;
send_timeout 3m;
proxy_connect_timeout 300s; #nginx跟后端服务器连接超时时间(代理连接超时)
proxy_read_timeout 300s; #连接成功后,后端服务器响应时间(代理接收超时)
proxy_send_timeout 300s;
proxy_buffer_size 64k; #设置代理服务器(nginx)保存用户头信息的缓冲区大小
proxy_buffers 4 32k; #proxy_buffers缓冲区,网页平均在32k以下的话,这样设置
proxy_busy_buffers_size 64k; #高负荷下缓冲大小(proxy_buffers*2)
proxy_temp_file_write_size 64k; #设定缓存文件夹大小,大于这个值,将从upstream服务器传递请求,而不缓冲到磁盘
proxy_ignore_client_abort on; #不允许代理端主动关闭连接

然后神奇的事情就发生了,上传文件成功了!
先把手头工作忙完,然后在补充以上各个参数的含义,与君共享...

相关文章

网友评论

      本文标题:Nginx的上传文件问题

      本文链接:https://www.haomeiwen.com/subject/rmxnoqtx.html