Re: Хочется сделать статическую раздачу файлов, но с произвольными именами

TDz tdz at modestus.org
Fri Nov 13 23:42:52 MSK 2009


Исключение вызова сильно ограничит проверку прав и заставит оперировать
только теми входными данными которые есть в URL. Если цель просто отдавать
то линки можно делать например
http://domain.com/ производное от имени файла на диске / имя которое давал
изначально пользователь

К примеру юзер заливает некий файл "файл.zip" , в ос он сохраняется как
6sdv5ia6v7asd5f.zip тогда самый простой способ был бы отдавать юзеру в
форуме ссылки вида http://domain.com/download/6sdv5ia6v7asd5f/файл.zip ,
такую ссылку можно отдавать без вызова php

2009/11/13 Vitaly Puzrin <vitaly at rcdesign.ru>

> Есть форум, куда юзеры льют картинки и прочую лабуду. Естественно,
> каждый называет файлы "как умеет". Сейчас "настоящие" имена  хранятся
> в базе, а на диске имена содержат только циферки. Все раздается
> скриптом -  генерятся хедеры с правильным именем, и делается
> accel-redirect на бинарник.
>
> Хочется вызов скрипта исключить совсем. Но хранить произвольные имена
> в файловой системе - стремно. Могут и на японском что-нибудь запихать,
> и файлы с одинаковыми именами.
>
> Существует ли какое-то красивое решение? Пока думал, что можно на
> вебстраничках нагенерить хитрых ссылок, где не только путь к
> бинарнику, но и желаемое имя, под которым надо отдать. А дальше
> встроенным перлом прямо в nginx заголовки составлять и доклеивать
> блоб. Не уверен, что это самый разумный метод. Может кто подскажет
> получше?
>
> Vitaly Puzrin
> http://www.rcdesign.ru
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx-ru/attachments/20091113/1213a1e2/attachment.html>


More information about the nginx-ru mailing list