LINUX.ORG.RU
решено ФорумAdmin

Загрузка файлов через nginx reverse proxy

 , , ,


0

1

Всем доброго дня.
Обнаружил такую вещь, что при работе nextcloud через nginx reverse proxy файлы сначала грузятся на сервер с nginx, а уже после загрузки кидаются на сервер с nextcloud. Для очень жирных файлов разница в работе напрямую и через прокси значительны. Можно как-то проксировать так, чтоб файл грузился напрямую ?
конфиг выглядит так

        client_max_body_size 512G;
        fastcgi_buffers 256 16K;
        gzip off;

        location / {
                proxy_pass https://cloud.linux.org.ru/;
                proxy_set_header Host $host;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-Proto $scheme;
        }

Deleted

Связка nginx+nextcloud ещё работает?
Большие файлы (десятки Гб) нормально скачиваются?
Конфиг остался такой-же, как в ОП-посте?

anonymous ()
Ответ на: комментарий от anonymous

Мне пришлось на haproxy перейти. Но у товарища похожий сетап с каскадом nginx, всё ок.
Сейчас конфиг выглядит так:

server {
            listen 443 ssl;
            client_max_body_size 0;
            ssl on;
            ssl_certificate /etc/letsencrypt/live/nextcloud.ololo.ru/fullchain.pem;
            ssl_certificate_key /etc/letsencrypt/live/nextcloud.ololo.ru/privkey.pem;
            ssl_trusted_certificate /etc/letsencrypt/live/nextcloud.ololo.ru/chain.pem;
            server_name nextcloud.ololo.ru;
            ssl_session_timeout 1d;
            ssl_session_cache shared:SSL:50m;
            ssl_session_tickets off;
            ssl_protocols TLSv1.2;
            ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!3DES:!MD5:!PSK';
            ssl_prefer_server_ciphers on;
            ssl_ecdh_curve secp384r1;
            ssl_stapling on;
            ssl_stapling_verify on;
            proxy_set_header X-Forwarded-For $remote_addr;
            add_header Strict-Transport-Security "max-age=15768000; includeSubDomains; preload;";
            add_header X-Robots-Tag none;
            add_header X-Download-Options noopen;
            add_header X-Permitted-Cross-Domain-Policies none;
            add_header X-Content-Type-Options "nosniff" always;
            add_header X-XSS-Protection "1; mode=block" always;
            add_header Referrer-Policy "same-origin" always;
            server_tokens off;
            location = /robots.txt {
                   allow all;
                   log_not_found off;
                   access_log off;
                   }
            location / {
                    proxy_pass http://192.168.1.99;
                    proxy_set_header Host $host;
                    proxy_set_header X-Real-IP $remote_addr;
                    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                    proxy_set_header X-Forwarded-Host $server_name;
                    proxy_set_header X-Forwarded-Proto https;
                    proxy_request_buffering off;
                    client_max_body_size 0;
                    proxy_max_temp_file_size 0;
                    proxy_read_timeout 1200s;
            }
}

Т.е. по существу к конфигу в шапке добавлены
client_max_body_size 0 и proxy_max_temp_file_size 0

Deleted ()
Ответ на: комментарий от anonymous

А, ну и proxy_request_buffering off не забудь.

Deleted ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.