@ArkadyBagdasarov

NGINX. Как указать TMP папку для проксирования webdav запроса?

server {
    listen 80;
    server_name SITE;

    location /download {
        client_max_body_size 15g;
	client_body_temp_path /home/tmp;
        proxy_pass http://SITE/download/;
    }

}

Есть простой конфиг для проксирования. Суть вопроса в том, чтобы nginx'у сказать, мол, во время проксирования складывай файл в /home/tmp.

Есть сервер1, который проксирует webdav запрос методом PUT на другой сервер2, как проксирующему серверу1 сказать складывать файл во временный файл, чтобы не держать в памяти?
Есть подозрение, что он(сервер1) его не и должен складывать, а файл напрямую летит от клиента на проксируемый сервер2. Но мне показалось, что проксирование - это когда сервер пропускает через себя, а редирект - когда перенаправляет. Мне нужно чтоб именно через себя пропускал проксирующий сервер1.
  • Вопрос задан
  • 298 просмотров
Пригласить эксперта
Ответы на вопрос 2
@Mysterion
В Вашем случае это именно проксирование.
Единственное, можно включить или выключить буферизацию данных, чтобы каждый запрос не сохранялся в память на первом сервере, а напрямую пересылался на второй по мере поступления запросов.
Ответ написан
@miksir
IT
Nginx читает тело запроса до client_body_buffer_size в память (по дефолту 16к). Если не влезает - сбрасывает все или только излишки (client_body_in_file_only) во временный файл по пути client_body_temp_path.

Эту буфферизацию можно отключить совсем proxy_request_buffering.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы