Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Вопрос по client body in file only в контексте file upload
- To: nginx-ru@xxxxxxxxx
- Subject: Вопрос по client body in file only в контексте file upload
- From: "naive" <nginx-forum@xxxxxxxx>
- Date: Sun, 13 Oct 2013 17:36:51 -0400
- Dkim-signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=helium.jlkhosting.com; s=x; h=Date:Sender:From:Message-ID:Content-Transfer-Encoding:Content-Type:Subject:To; bh=p1lmJXrI43t7aySZE9SoZYQDucLeY62AArhs/AOXv0M=; b=PtNk6aYwKtfkcK0MPnLc24ib2fPQALfpTIrCPKacIcu3IOQZrfL7ig/D1El1c86jDz1vKBs8/eldf6gIisk4fkGvgbvdfqE5icqnITfcwDZ4qkAEtZBIaGpyepZtJy8iB/xfcvCicLxqkrK9QjsP+wvi2U2RoVWW6kGA5+xCmbc=;
Доброй ночи!
Возник вопрос по использованию client_body_in_file_only для обработки file
upload.
Есть подробный how-to, раскрывающий данную тему:
https://coderwall.com/p/swgfvw
Однако, возникает вопрос - что произойдёт, если при записи файла в
client_body_temp_path файл с подобным именем будет уже существовать?
Такая ситуация, как мне кажется, может произойти в случаях:
1. количество файлов станет >= 10^10
2. файлы будут восстановлены из бекапа, при этом id будет высчитываться
"по-порядку"
3. случайно сгенерированный id совпадёт с именем уже существующего файла
Возможные варианты:
1. ошибка
2. перезапись файла
3. генерация нового id, при наличии ранее созданного файла с таким же именем
(если кол-во файлов <10^10)
Вопрос, на который я хочу ответить - можно ли хранить uploaded files прямо в
client_body_temp_path или же необходим CLI-скрипт, перемещающий файлы в
другую директорию с гарантированно уникальным id или проверкой
уникальности?
И смежный подвопрос - когда появится возможность влиять на
client_body_temp_path и имена файлов, которые генерятся при записи
(насколько я понимаю, сейчас они имеют вид [\d]{10})?
Спасибо!
Posted at Nginx Forum:
http://forum.nginx.org/read.php?21,243660,243660#msg-243660
_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|