502错误的网关nginx闪亮文件上传

时间:2018-12-02 17:04:06

标签: nginx ubuntu-16.04 shiny-server

我使用fileUpload上传了一个大文件(5Gb)。我在闪亮的服务器代码中将文件上传限制增加到10Gb。 文件上传成功,但上传完成后返回错误:

  Error : html head title 502 bad gateway /title /head

以下是我的配置信息:

options(shiny.maxRequestSize = 10000 * 1024 ^ 2)

nginx配置/etc/nginx/nginx.conf在http块中具有以下基本设置:

http {

    map $http_upgrade $connection_upgrade {
        default upgrade;
       '' close;
    client_max_body_size 100G;
    large_client_header_buffers 8 64k;
   }
    sendfile on;
    tcp_nopush on;
    tcp_nodelay on;
    keepalive_timeout 65;
    types_hash_max_size 2048;
    # server_tokens off;

    # server_names_hash_bucket_size 64;
    # server_name_in_redirect off;

    include /etc/nginx/mime.types;
    default_type application/octet-stream;
 }

/etc/nginx/sites-available/default的配置如下所示:

server {
    listen 80 default_server;
    listen [::]:80 default_server

    root /var/www/html;

    # Add index.php to the list if you are using PHP
    index index.html index.htm index.nginx-debian.html;

    server_name _;
    location /shiny/ {
    proxy_pass http://X.X.X.X:3838/;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    rewrite ^(/shiny/[^/]+)$ $1/ permanent;

   }

   location /rstudio/ {
   proxy_pass http://X.X.X:8787/;
   proxy_http_version 1.1;
   proxy_set_header Upgrade $http_upgrade;
   proxy_set_header Connection "upgrade";     
   rewrite ^(/rstudio/[^/]+)$ $1/ permanent;
   client_max_body_size 100000M;
  }

    location / {
        # First attempt to serve request as file, then
        # as directory, then fall back to displaying a 404.
        try_files $uri $uri/ =404;
   proxy_buffer_size 16k;
   proxy_buffers 8 32k;
   proxy_busy_buffers_size 224K;

   keepalive 64
}

任何尝试的提示都会有所帮助。

1 个答案:

答案 0 :(得分:0)

Adding the following lines to the location/ to the config file in sites-available/myApp.com fixed the issue:

location / {

   proxy_http_version 1.1; // you need to set this in order to use params below.
   proxy_pass http://XXXXXX.XX.XX:3838;
   proxy_redirect http://XXXXXX.XX.XX:3838/ https://$host/;

   proxy_set_header   Host $http_host;
   proxy_set_header Upgrade $http_upgrade;
   proxy_set_header Connection $connection_upgrade;
   proxy_temp_file_write_size 64k;
   proxy_connect_timeout 10080s;
   proxy_send_timeout 10080;
   proxy_read_timeout 10080;
   proxy_buffer_size 64k;
   proxy_buffers 16 32k;
   proxy_busy_buffers_size 64k;
   proxy_redirect off;
   proxy_request_buffering off;
   proxy_buffering off;
}