littleman
5.03.2014 - 16:06
В интернете много написано и тд. но всё же интересует вопрос, как правильно реализовать отдачу файла клиенту ? Размер файла до 100м. - это прошивки , драйверы и тд.
Как лучше организовать работу ? Если это делать Ngnix, но я поднимал только LAMP так тут проблем ка .
У кого какие есть домыслы , или статья (с хабры не нужно я там читал про то что самый лучшй вариант Ngnix , выше описал почему не подходит.)
TranceIT
5.03.2014 - 16:18
Мммм... А просто дать ссылку на файл чем не устраивает?
_____________
Безвозмездно помогаю только тем, кто сам пытается что-то сделать. Остальным за WMR
Даже если там 10 строк кода!
Даже если мне это ничего не стоит!
Даже если вы нуб!
littleman
5.03.2014 - 16:27
TranceITА зачем ? Кто хочу качаю, а я сиди в стороне и кури папироску .
Мне нужно посещаемость сайта, тобишь чтобы заходили нажимали скачать и качали, а по прямой ссылке это как ? Путь полный знают, вопрос , а зачем заходить ? Если и так качается .
TranceIT
5.03.2014 - 16:33
littlemanА у нас что в пути файла домена нет?
_____________
Безвозмездно помогаю только тем, кто сам пытается что-то сделать. Остальным за WMR
Даже если там 10 строк кода!
Даже если мне это ничего не стоит!
Даже если вы нуб!
killer8080
5.03.2014 - 16:34
блокируй скачивание с чужих доменов в referer
littleman
5.03.2014 - 17:01
TranceITУ меня временная URL (тестирую).
killer8080Это тоже не выход .
P.S Хочу как на дипозите или летит ну смысл понятен , чтобы зашли получили временный URL на один IP и хватит.
Пока написал по замене URL, но глубже капнул проблемы со статистикой отдача.
Игорь_Vasinsky
5.03.2014 - 17:17
Цитата |
на один IP и хватит. |
у нас бы после первой скачки - 3 района тебя не поняли бы)))
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
killer8080
5.03.2014 - 17:18
Цитата (littleman @ 5.03.2014 - 15:01) |
чтобы зашли получили временный URL на один IP и хватит. |
nginx
secure_link думаю подойдёт
UPD он же позволяет задать expire
littleman
5.03.2014 - 17:40
Игорь_VasinskyЯ имею ввиду сессию на одно человека , а то передал другому и тд.
killer8080Ngnix самое оно для отдачи, даже лучше нету

но я поднимал как то сервак Ngnix , не заставить совместно работать Ngnix , PHP , Mysql

LAMP без проблем , работал на ура.
littleman
5.03.2014 - 17:42
Можно как то поверх Lamp поставить Ngnix , но я как двое суток просидел плюнул, стал дорабатывать другой проект .
И всё равно возвращаюсь

к своей теме ...
killer8080
5.03.2014 - 17:56
Цитата (littleman @ 5.03.2014 - 15:42) |
Можно как то поверх Lamp поставить Ngnix , но я как двое суток просидел плюнул, стал дорабатывать другой проект . |
LAMP в чистом виде вообще мало кто использует. Апач традиционно ставят бэкэндом, на фронте либо нгинкс, либо лайти. Лучше разобраться с конфигурацией, чем искать костыли.
littleman
5.03.2014 - 17:58
killer8080Спасибо ! Буду думать и еще раз думать .
killer8080
5.03.2014 - 18:04
littlemanможно конечно отдавать файлы через временные симлинки, но тогда встаёт проблема уборки мусора, и контролировать IP клиента то же не получится. Лучше не изобретать костыли
littleman
5.03.2014 - 21:09
killer8080В смысле симлинки ? Ща как то гугачил, попал на форум двух летней давности, там там такой вело-костыль один написал

о ужас .
Копировать файл в отдельную папку (назвать папку рамдомно или тайм и MD5) туда поместить файл и отдавать, потом проверить папку на тайм и удалить если время пришло.
killer8080Вы про это хотели сказать ? Если да ,то это тихий ужас.
killer8080
5.03.2014 - 21:25
Цитата (littleman @ 5.03.2014 - 19:09) |
Вы про это хотели сказать ? |
нет, файлы помещаются в директорию вне DOCUMENT_ROOT, либо доступ из веб перекрывается конфигом. В другой директории создаются симлинки на файлы с непредсказуемыми именами, типа того как ты описал, по крону или демоном отслеживаются и убиваются старые симлинки. Но я этот метод не рекомендую