Hello! On Mon, Oct 14, 2013 at 08:07:57AM -0400, naive wrote:
> > Каталог для хранения временных файлов не предназначен для того, > > чтобы в нём держали файлы дольше, чем это необходимо для обработки > > этих файлов. Фатальных проблем при коллизиях не возникнет, см. > > выше, но и хорошего тоже немного. > > По идее, весь метод с использованием client_body_in_file_only и > client_body_temp_path изначально не предназначен для handling file upload. Директива client_body_in_file_only как раз предназначена для того, чтобы лишний раз не гонять тело запроса в рамках одной машины, а записать его на диск и передать на обработку бекенду уже файл. И та же функциональность используется в модуле DAV, но уже в рамках самого nginx'а. > Тем не менее, если уж использовать эту возможность, то хотелось бы избежать > лишних действий (перемещения файлов/смены имен) и установки чего-то кроме > nginx-extras на storage-машину. Где вы видите лишнее действие? Файл записывается в каталог для временных файлов под временным именем, после окончания загрузки, если всё хорошо, - перемещается куда надо под постоянным именем и/или обрабатывается иначе. Если вдруг во временном каталоге остаются файлы на время большее, чем нужно для обработки - это повод предположить наличие проблемы и заняться её решением. Перемещение файла в рамках одной файловой системы - крайне дешёвая операция, не стоит на ней экономить. На неудобстве работы с получившейся помойкой, а равно на попытках найти свободное имя для очередного файла, если файлов будет действительно много, вы потеряете больше. Что до установки "чего-то", то в указанном вами пакете есть как минимум два встроенных в nginx скриптовых языка, на которых можно сделать любую обработку. [...] > > Возможность влиять на имена файлов есть и сейчас, она подробно > > документирована тут: > > > > http://nginx.org/r/client_body_temp_path > > > > А именно - можно задавать желаемую иерархию подкаталогов. Более > > никаких возможностей для влияния не планируется. > > Речь как раз шла про имена файлов, поскольку level 1-3 помогает лишь решить > вопрос максимального количества файлов в папке, но не их общего > максимального количества и именования. Я прекрасно понял ваш вопрос, и ответил на него максимально подробно. Вопросов, которые вы пытаетесь решить - не стоит при использовании client_body_temp_path по назначению. И по этой же причине не сущетсвует планов по решению этих вопросов. -- Maxim Dounin http://nginx.org/en/donation.html _______________________________________________ nginx-ru mailing list [email protected] http://mailman.nginx.org/mailman/listinfo/nginx-ru
