![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| admsasha |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 763 Регистрация: 28.1.2005 Репутация: нет Всего: 6 |
Как сделать что бы скачивать через скрипт можно было только в один поток ?
какой параметр ставиться ? |
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
admsasha - если у тебя есть желание, давай сегодня вечером или завтра напишем вместе то, что тебе нужно. Для подсчёта кол-ва скачиваний совсем не нужно делать один поток.
-------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| admsasha |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 763 Регистрация: 28.1.2005 Репутация: нет Всего: 6 |
при многопоточной закачки у меня сервер от httpd вешается... поэтому и хочу сделать однопоточную... хорошо жду вечера... надеюсь все решим, если что то я просто в invisible |
|||
|
||||
| korob2001 |
|
||||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Привет, вобщем написал тут такую программу, она кончечно же не совсем то, что тебе нужно, но очень похожа. Делает он следующее:
1. Генерирует форму для добавления ссылки. 2. На странице с формой, выводит все ссылки. 3. Отслеживает и считает кол-во кликов, а так же отслеживает что бы количество переходов по ссылке не привышало то, которое указано в базе данных, в качестве максимального. Если же ссылку нужно показывать бесконечно, нужно установить значение максимально допустимых кликов в 0, если же установлена другая цифра, то как только счётчик дойдёт до этого числа, то эту ссылку программа показывать больше не будет. Если добавить в эту программу проверку данны, полученных от пользователя, так же оптимизировать SQL запросы, и написать программу которая будет запускаться время от времени и удалять те ссылки, которые уже показаны нужное число раз, а так же отдельный вход для админа ( с исчезающей дверью Тебе же вместо формы добавления ссылки нужно генерить форму загрузки файла на сервер. После загрузки программа генерирует случайное имя файлу, переименовывать его и записывать его имя в базу данных. Всё остальное, точьно так же. Теперь о коде, для начала выполни такой SQL запрос:
Теперь просто сохрани этот код в файл с любым именем, лишь бы расширение было как у выполняемого файла, обычно .cgi, .pl, в каталог cgi-bin/.
Enjoy ;)))) ЗЫ: проверки полученных данных и админки здесь нет, соответственно пока вы этого не сделаете, не стоит выкладывать её в глобальную сеть, иначе будете наблюдать на своём сайте надпись типа: Hacked by nE05idE71Fdl Удачи. Это сообщение отредактировал(а) korob2001 - 4.7.2005, 20:42 -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
||||
|
|||||
| admsasha |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 763 Регистрация: 28.1.2005 Репутация: нет Всего: 6 |
Как я понимаю это редирект на файл ? а что мне мешает, узнать полный путь к файлу, и качать без ограничений ? |
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
А ты пробовал?? Если да, то как???
Это сообщение отредактировал(а) korob2001 - 5.7.2005, 04:39 -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| admsasha |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 763 Регистрация: 28.1.2005 Репутация: нет Всего: 6 |
во всем этом и заключается проблема скрипт назвал load.cgi, качаю файл через ReGet
|
||||
|
|||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Странно, а у меня вот, что пишет.
Ты как путь указываешь??? Это сообщение отредактировал(а) korob2001 - 5.7.2005, 21:02 -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| admsasha |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 763 Регистрация: 28.1.2005 Репутация: нет Всего: 6 |
$url="unload/file227392214.rar"; |
|||
|
||||
| korob2001 |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2871 Регистрация: 29.12.2002 Репутация: 13 Всего: 61 |
Попробуй так:
Создай в каталоге /www, каталог soft/, т.е. /www/soft/. В него кинь свой файл. запусти скрипт и заполни поля, например: Заголовок ссылки: Мой файл Ссылка: http://localhost/soft/file227392214.rar Максимум скачиваний: 10 После жми кнопку ДОБАВИТЬ. Затем жми на ссылку, которую ты хочешь скачать, если ты качаешь файл через свою программу, вот и указывай путь к Perl файлу, код которого я выложил, т.е. http://localhost/cgi-bin/linkcounter.pl?id=1 Это сообщение отредактировал(а) korob2001 - 6.7.2005, 04:51 -------------------- "Время проходит", - привыкли говорить вы по неверному пониманию. "Время стоит - проходите вы". |
|||
|
||||
| admsasha |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 763 Регистрация: 28.1.2005 Репутация: нет Всего: 6 |
Скрипт твой, данные точно такие какие ты сказал.
вот полный лог ReGet, без вырезок.
P.S. не могу не как поймать тебя в ICQ |
|||
|
||||
| admsasha |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 763 Регистрация: 28.1.2005 Репутация: нет Всего: 6 |
вообщем попробывыл lock, блокировки неправильно снимаются, и всё равно (но это смотреть код надо внимательнее) качает в несколько секций.
выход нашел только один if(exists($ENV{'HTTP_RANGE'})){exit;} минусы - нет подержки докачки. можно конечно перед каждым выводом буфера ставить в базу метку, что-то типа пинга. т.е. вывел 1024 байт, поставил пинг в базе а выше указать, если последнее время пинга < 10 секунд, то закрыть, и не дать качать. но мне кажется что будет сильно из-за этого тормозить систему |
|||
|
||||
![]()
|
| Правила форума "Perl: CGI программирование" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: разработка для Web | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |