|
Страници по тази тема: 1 | 2 | >> (покажи всички)
Тема
|
on download на файл
|
|
Автор |
voyager (прасе в космоса) |
Публикувано | 29.08.03 14:25 |
|
Чудя се нещо. Дали има начин да разбера когато един файл е дръпнат. Тоест, пускам линка към файла на юзера и щом той го дръпне да го изтрия.
Знам че решение за такива случаи е файлът да се чете от скрипта и да се пуска към браузъра, ама в случая не ми върши работа, щото е много бавно.
Затова искам да давам линк към самия файл, а после ще го трия.
Мерси ако някой знае нещо
--
| |
Тема
|
Re: on download на файл
[re: voyager]
|
|
Автор |
nupaT (pirat) |
Публикувано | 29.08.03 15:17 |
|
Защо не следиш логовете на сървара. Ако файла е дръпнат го триеш
Break The UnBreakable
| |
Тема
|
Re: on download на файл
[re: voyager]
|
|
Автор |
Dakota (erotoman) |
Публикувано | 29.08.03 16:02 |
|
Можеш да си напишеш модул за Apache, който да ти трие файл, след като е бил свален. Това като че ли ще е най-чистият вариант. Иначе можеш да си пуснеш в crontab-а нещо, което да парсва лог-файла на Apache-то, но този вариант предполага файлът да стои известно време неизтрит. Можеш също да правиш някакви html frames магарии - в единия frame да се тегли файла, a в другия да стартираш някакво php, което да се погрижи за останалото.
Everything louder than everything else...
| |
Тема
|
Re: on download на файл
[re: Dakota]
|
|
Автор |
voyager (прасе в космоса) |
Публикувано | 29.08.03 16:11 |
|
Мерси и на двамата не ми беше хрумвало това.
Пират, в тоя лог се записва след като е дръпнат файла ли? Не като е почнал да се дърпа?
Щото и аз мислех за крон евент, нищо не ми пречи да го сложа на всеки 3 минути примерно.
Дакота, модула също звучи добре (имам пълен достъп до сървъра) - тва ще рече че трябва да го пиша на С предполагам. Ще взема да попрочета дали има инфо за модулите на сайта на апач.
--
| |
Тема
|
Re: on download на файл
[re: voyager]
|
|
Автор |
Mycлoн (Муслен Ужасон) |
Публикувано | 29.08.03 16:16 |
|
май няма как да се разбере кога файла е бил действително изтеглен!
при нормален даунлоуд - добре, но я си ме представи как идвам с флашгет и пускам 10 връзки... флашгета е гей програма и на всяко парче прави заявка за целия файл ( от някакъв начален офсет до края ) и като си вземе нейното - отрязва връзката.
скоро правих подобно нещо и се зазяпах какви ги върши флашгета. последно стриймвах файла с пхп скрипт, който спазва протокола т.е. стриймва частта от файла дето му поискат. забранявах достъп след седмица... разумното време за изтегляне на файла.
можеш да следиш за изпращането на всяко парче и евентуалната възможност на юзъра да го сглоби ( най-вероятно даунлоуд менажера му ) ама и това ми се струва умряла работа.
последно може да си направиш комбинация от 2те - хем да сглобяваш парчета, хем да режеш след тайм аут.
мога да постна моя скрипт... този дето стриймва partial content. какво те кара да мислиш, че ще е бавно? по-бавно от стриймването на апаша ама какво от това? колко потребителя очакваш на сайта?
по-здрави
ein heller Schein am Firmament
| |
Тема
|
Re: on download на файл
[re: Mycлoн]
|
|
Автор |
voyager (прасе в космоса) |
Публикувано | 29.08.03 16:53 |
|
Здрасти мерси и на тебе.
Става въпрос за 60 секундни видео-та. Не съм запознат много с файловите им формати, но като погледнах тука едни мпег файлове, предполагам 60 секунди ще са няколко мегабайта - до около 10 май. Първо мислех да ги трия малко след като е дадена заявката, на няколко минути, ама сега като гледам ще трябва да дам повече време.
Флаш гета знам че пуска много заявки, но нали не прави някакви номера с ай-пито? Мисля да банвам айпита, които са отправили заявка към заявяван веднъж файл, освен ако не са същите айпита.
Иначе за скоростта го тествах при мене - един 3-4 мегабайтов файл доста ми товари сървъра. Вярно, че машината ми е слаба, но пък аз съм само един, който праща заявки. Не знам какво натоварване се очаква, но клиентът държи на скоростта, така че явно очаква доста народ.
--
| |
|
По принцип можеш и на Perl да пишеш модули за Apache, но...ти нали каза, че искаш да е бързо?! Тогава C е най-добре.
Тук имам печатна книга "Writing Apache Modules in C and Perl" на O'Reilly. Ако можеш да я изкопаш от някъде би ти била много полезна.
Everything louder than everything else...
| |
Тема
|
Re: on download на файл
[re: voyager]
|
|
Автор | AcidMemory (Нерегистриран) |
Публикувано | 29.08.03 17:16 |
|
може би единственото сигурно решение за тебе е да си стриймваш контента през скрипта, като генерираш файл с уникално име (пр. md5+unique_id) и го оставяш за даден период от време (пр. 1 час, ще си напишеш някакво gc дето да ти ги трие после), като записваш уникалното ид в куки на клиента (може и със сесията, която трябва да не експайрва веднага), за да можеш да имаш поне някаква ориентировка и да съпоставяш кой какво тегли
по този начин генерираните файлове не трябва да си ти в уеб роот-а (което е достатъчно голям плюс)
но в никакъв случай не банвай ИП-та, щото хората с динамични ИП-та, корпоративни мрежи и т.н. ще "клекнат"
| |
Тема
|
Re: on download на файл
[re: voyager]
|
|
Автор |
Mycлoн (Муслен Ужасон) |
Публикувано | 29.08.03 17:16 |
|
друга идея
1) скрипт пренасочва към създадения за даунлоуд файл, като преди това отбелязва в сесията, че въпросния клиент иска да точи. предполагам някакъв низ - комбинация от името на файла и сешън айди.
2) файла се точи
3) при заявка от същата сесия - триеш стария файл и пускаш нов.
4) дебнене ( тва не знам как ще стане ) при убиване на сесията - изтриване на стария файл.
дебненето го виждам или с някакъв callback или крон джоб дето периодично изрива такива дето са осиротяли без сесии.
успех!
ein heller Schein am Firmament
| |
Тема
|
Re: Apache Module
[re: Dakota]
|
|
Автор | AcidMemory (Нерегистриран) |
Публикувано | 29.08.03 17:24 |
|
имам я на pdf-че, ако ти трябва
| |
|
Страници по тази тема: 1 | 2 | >> (покажи всички)
|
|
|