Текущий архив: 2007.09.16;
Скачать: CL | DM;
Внизкак запретить несанкционированное скачивание? Найти похожие ветки
← →
просто так (2007-08-14 14:58) [0]Допустим, у меня есть сайт, в сайте находятся файлы в архиве (программы, музыка - неважно). Все это распространяется бесплатно, только с одним условием - надо зарегистрироваться на сайте, войти и скачать нужный файл.
Но, если один человек скачал этот файл, то он уже знает прямую ссылку на файл, может дать ссылку другому, и он скачает этот файл без регистрации. Вот этот вариант меня не устраивает.. Как сделать так, чтобы второй человек не мог скачивать файлы без регистрации?
P.S. Я знаю, что распространение чужих программ, музыки - незаконно, что есть поисковики вроде гугля, яндекса, и вообще, что надо учить мануал, но я спрашиваю у вас.
Спасибо большое ;)
← →
Ega23 © (2007-08-14 15:07) [1]Генерить ссылку на файл каждый раз новую. Чтобы человек каждый раз регистрировался... :)
← →
Reindeer Moss Eater © (2007-08-14 15:07) [2]то он уже знает прямую ссылку на файл
Значит надо сделать так, чтобы прямой ссылки на файл не было.
← →
ЗапомниСынок (2007-08-14 15:08) [3]IMHO отличить зарегистрированного пользователя, который должен иметь возможность обращаться к ресурсам вашего сайта с разных компьютеров, от несанкционированного, которому стали известны реквизиты зарегистрированного пользователя, в принципе невозможно.
← →
просто так (2007-08-14 15:11) [4]
> Reindeer Moss Eater © (14.08.07 15:07) [2]
> то он уже знает прямую ссылку на файлЗначит надо сделать
> так, чтобы прямой ссылки на файл не было.
Вот-вот, а как это сделать?
> ЗапомниСынок (14.08.07 15:08) [3]
Ну если второй человек знает все реквизиты первого, то я не против, я хочу запретить второму, если он знает только ссылку, но не другие данные первого.
← →
Котик Б (2007-08-14 15:13) [5]Проще простого !!!
Персонифицированная ссылка с временем жизни :)
← →
просто так (2007-08-14 15:13) [6]Ну скажем, я сейчас качаю песню группы "Массква". Адрес в Опере:
http://m3-1.base.zaycev.net/363e88360c4dd0fa3cab4c551e111d13/107/10767/masskva_-_nu_nakonec-to.mp3
Это ведь не прямая ссылка, так?
← →
Reindeer Moss Eater © (2007-08-14 15:13) [7]Вот-вот, а как это сделать?
А зачем так делать?
Первый скачавший может отдать как ссылку на файл так и свой аккаунт.
И 100 человек скачают твой файл без регистрации.
← →
просто так (2007-08-14 15:16) [8]
> И 100 человек скачают твой файл без регистрации.
Ну, допустим... что один юзер не имеет права скачивать файл больше 10-ти раз :)
Если второй человек знает все реквизиты первого, то я не против, я хочу запретить второму, если он знает только ссылку, но не другие данные первого.
← →
Mystic © (2007-08-14 15:17) [9]> просто так (14.08.07 15:13) [6]
Я не знаю конфигурации твоего сервера, чтобы сказать прямая это ссылка или нет. Может у тебя в Appache повешен обработчик на mp3 файлв, который возвращает содержимое, при этом проверяет cookies, сессию и т. п.?
← →
просто так (2007-08-14 15:20) [10]Тааак, луч света... :)
> просто так (14.08.07 15:13) [6]
это не мой сервер, я просто оттуда скачал песню.
Значит, я должен вешать на Апач обработчик mp3 ?
← →
Reindeer Moss Eater © (2007-08-14 15:21) [11]это не мой сервер,
не твой сервер, не твои файлы....
расслабься уже.
← →
просто так (2007-08-14 15:21) [12]будем копать в направлении [9] :)
Спасибо, попробуем.
← →
Reindeer Moss Eater © (2007-08-14 15:23) [13]Ну, допустим... что один юзер не имеет права скачивать файл больше 10-ти раз :)
А как ты это будешь считать?
А если я никому ничего не давал, но качаю в 11 потоков?
Или у меня мопед постоянно рвет коннект?
← →
Плохиш © (2007-08-14 15:24) [14]
> как запретить несанкционированное скачивание?
Написать скрипт/cgi-приложение, которое отсылает файлы после успешных проверок. Все файлы хранить в недоступном извне месте.
← →
просто так (2007-08-14 15:25) [15]мдааа.... Сложновато получается..
И какое же решение предлагаете?
← →
Reindeer Moss Eater © (2007-08-14 15:27) [16]И какое же решение предлагаете?
не зная сути проблемы предлагать дать решение?
чума!
:)
← →
просто так (2007-08-14 15:27) [17]
> Плохиш © (14.08.07 15:24) [14]
> > как запретить несанкционированное скачивание?Написать
> скрипт/cgi-приложение, которое отсылает файлы после успешных
> проверок. Все файлы хранить в недоступном извне месте.
То есть, скрипт копирует файл в какую-то общедоступную папку, а через неделю удаляет?
← →
partizan (2007-08-14 15:28) [18]
> Написать скрипт/cgi-приложение, которое отсылает файлы после
> успешных проверок. Все файлы хранить в недоступном извне
> месте.
Если файлы небольшого размера.
Если большие файлы - симлинк с временем жизни
← →
просто так (2007-08-14 15:28) [19]
> Reindeer Moss Eater © (14.08.07 15:27) [16]
я в [0] написал
← →
DrPass © (2007-08-14 15:28) [20]
> Как сделать так, чтобы второй человек не мог скачивать файлы
> без регистрации?
Это творческая задача. Я бы решил ее, например, с помощью сессий. Т.е. пользователь регистрируется, сервер создает сессию, в которой он работает. И при обращении к файлу проверяет ID сессии. Если он задан, и сессия действительно принадлежит зарегистрированному пользователю, то скачивание разрешается. Если нет, то не разрешается. Собссно, судя по http: //m3-1.base.zaycev.net/363e88360c4dd0fa3cab4c551e111d13/107/10767/masskva_-_nu_nakonec-to.mp3, это и есть ID сессии
← →
partizan (2007-08-14 15:29) [21]на чем вообще сайт написан?
← →
Плохиш © (2007-08-14 15:30) [22]
> То есть, скрипт копирует файл в какую-то общедоступную папку,
> а через неделю удаляет?
Один из вариантов.
← →
просто так (2007-08-14 15:31) [23]на php.
Спасибо всем большое.
← →
Reindeer Moss Eater © (2007-08-14 15:31) [24]я в [0] написал
Это не суть проблемы, а просто извращенное желание сделать нечто, что по твоему решит твою настоящую проблему.
← →
partizan (2007-08-14 15:33) [25]
> То есть, скрипт копирует файл в какую-то общедоступную папку,
> а через неделю удаляет?
не сам файл, а симлинк
← →
Плохиш © (2007-08-14 15:35) [26]
> partizan (14.08.07 15:28) [18]
Честно говоря, не понимаю разницы в том как будет отправлена куча байтов клиенту, которую сервер возмёт из файла на диске или получит в качестве ответа от скрипта. И как на это влияет размер.
← →
partizan (2007-08-14 15:37) [27]На размер отправки никак, но если это фильм - зачем его копировать в разные места на сервере?
← →
Плохиш © (2007-08-14 15:46) [28]
> partizan (14.08.07 15:37) [27]
> На размер отправки никак, но если это фильм - зачем его
> копировать в разные места на сервере?
Когда я предлагал что-то куда-то копировать?
← →
partizan (2007-08-14 15:52) [29]
> Написать скрипт/cgi-приложение, которое отсылает файлы после
> успешных проверок.
Отдаст ли апач этот фал сам, или запустит php-скрипт, который будет его читать и отдавать - разница в скорости и память, которая выделится для работы скрипта.
Кроме для пхп скриптов обычно установлено ограничение на время выполнения и размер используемой памяти.
← →
просто так (2007-08-14 15:53) [30]Тааакк, первые грабли :)
Как создавать симлинки?
← →
b z (2007-08-14 15:56) [31]> Как сделать так, чтобы второй человек не мог скачивать файлы
> без регистрации?
положить их в защищеное, какой-либо серверной аутентификацией, место
← →
partizan (2007-08-14 15:56) [32]
> Как создавать симлинки?
А вот за этим - в гугл :)
← →
просто так (2007-08-14 16:02) [33]
> ln -s /dev/ttyS0 /dev/ttyS1 Делает линк с /dev/ttyS0 как
> файл с именем ttyS1
а симлинк в php создавать можно? или только самому надо делать, вручную?
← →
Kerk © (2007-08-14 16:06) [34]Обычно дают уникальную ссылку с ограниченым временем жизни.
Еще можно сделать ограничение по IP.. давать качать тока с одного.
← →
partizan (2007-08-14 16:07) [35]Из пхп можно выполнить системные команды:
<?php echo `ln -s /path/to/my/gallery gallery`; ?>
Именно такие кавычки: `
Но это может быть запрещено хостингом, тогда честно говоря не знаю как быть. Лучше поискать на форумах по пхп (http://phpclub.ru/talk/)
← →
partizan (2007-08-14 16:09) [36]
> а симлинк в php создавать можно? или только самому надо
> делать, вручную?
>
int symlink ( string target, string link)
symlink() creates a symbolic link from the existing target with the specified name link.
See also link() to create hard links, and readlink() along with linkinfo().
Note: This function is not implemented on Windows platforms.
← →
Eraser © (2007-08-14 16:11) [37]если пользователь зарегистрирован, то его ID храниться в базе/сессии/кукисах, соответственно в любой момент времени можно проверить, зарегитсрирован ли он.
$file_name = "file.dat"; // Имя файла, который увидит юзер.
if (is_user_registered(user_id))
{
header("Content-Type: application/force-downloadn");
header("Content-Disposition: attachment; filename=$file_name");
if (is_file($temp_file_name))
{
echo file_get_contents($temp_file_name);
unlink($temp_file_name);
}
}
как то так...
← →
partizan (2007-08-14 16:17) [38]
> как то так...
См. [14], [29]
← →
partizan (2007-08-14 16:18) [39]echo file_get_contents($temp_file_name);
Подходит только для небольших фалов
← →
Eraser © (2007-08-14 16:22) [40]
> partizan (14.08.07 16:18) [39]
ну а для больших можно написать свой file_get_contents и выдавать данные в цикле.
существенный недостаток конечно - отсутствие возможности докачки..
← →
partizan (2007-08-14 16:23) [41]
> существенный недостаток конечно - отсутствие возможности
> докачки..
>
И ограничение по времени на работу скрипта. Большой файл скрипт просто не успеет отдать
← →
Kerk © (2007-08-14 16:27) [42][40] Eraser © (14.08.07 16:22)
> существенный недостаток конечно - отсутствие возможности
> докачки..
http://progler.ru/search?cx=000478898831061129014%3A_kgkiuuegem&q=php+%D0%B4%D0%BE%D0%BA%D0%B0%D1%87%D0%BA%D0%B0&cof=FORID%3A11#406
;)
← →
Eraser © (2007-08-14 16:34) [43]
> partizan (14.08.07 16:23) [41]
ну если есть доступ к настройкам сервака, то можно ограничение убрать, хотя рисковано конечно.
> Kerk © (14.08.07 16:27) [42]
хех, и точно )
← →
PavelVolya (2007-08-14 16:40) [44]У меня на сайте стоит компонента Zorh FileProtector
Очень удобная программа, автоматически устанавливается и встраивается в Apache.
В администраторском разделе добавляем файлы, и генерится линк
http://www.<sitename>.ru/zorh_fp/download.php=?<FILE_ID>
ну а доступ к этому линку получают только зарегистрированные пользователи.
Если надо могу скинуть на EMAIL эту программу
← →
partizan (2007-08-14 16:45) [45][42][43]
Это конечно интересно, НО как давнлоад-менеджер будет авторизироваться на сайте?
Если проверять в скрипте авторизацию и выдавать файл, хоть целиком, хоть кусками - всеравно пользователь не сможет воспользоваться менеджером
← →
_xxx_ (2007-08-14 18:51) [46]
> partizan (14.08.07 16:45) [45]
> [42][43]Это конечно интересно, НО как давнлоад-менеджер
> будет авторизироваться на сайте?Если проверять в скрипте
> авторизацию и выдавать файл, хоть целиком, хоть кусками
> - всеравно пользователь не сможет воспользоваться менеджером<
А куки никак не катят чтоли?
← →
просто так (2007-08-16 22:04) [47]
> Reindeer Moss Eater © (14.08.07 15:31) [24]
вот сижу я сейчас, копирую файлы с чужого сервера на свой сервер напрямую, потому что они лежат открытой ссылкой, хотя владелец сайта тоже желал, чтобы мы регистрировались, прежде чем качать эти файлы. Но я не хочу, чтобы кто-то другой таким же образом скопировал файлы у меня, поэтому ищу способ защиты от этого.
Ну а всем, остальным, особенно партизану, спасибо, вы мне очень помогли. :)
← →
просто так (2007-08-16 22:04) [48]
> Reindeer Moss Eater © (14.08.07 15:31) [24]
вот сижу я сейчас, копирую файлы с чужого сервера на свой сервер напрямую, потому что они лежат открытой ссылкой, хотя владелец сайта тоже желал, чтобы мы регистрировались, прежде чем качать эти файлы. Но я не хочу, чтобы кто-то другой таким же образом скопировал файлы у меня, поэтому ищу способ защиты от этого.
Ну а всем, остальным, особенно партизану, спасибо, вы мне очень помогли. :)
← →
Reindeer Moss Eater © (2007-08-16 22:39) [49]тоже желал, чтобы мы регистрировались
Ну если так позарез нужна регистрация, то нарегистрируй сам себе сто тысяч пользователей (по паспортной базе или любой другой) и отдавай файлы без заморочек.
Или пятсот тысяч, если мало.
:)))
← →
просто так (2007-08-16 22:49) [50]Нееет, ты меня кажется не понял, я не хочу обманывать людей, и не хочу, чтобы меня тоже обманывали, понимаешь?
Конечно, мне хочется, чтобы мой сайт посещали больше людей, но я не хочу делать накрутку..
Если человек регистрировался, то получает файл, если нет, то пусть регистрируется, все чего я хочу.
← →
Reindeer Moss Eater © (2007-08-16 22:51) [51]А не боишься, что зарегистрированный человек посылкой гет запроса тебя обманет? Скачает файл, и сразу удалит, так как он ему не нужен.
А ты подумаешь, что нужен.
:)))
← →
Reindeer Moss Eater © (2007-08-16 22:54) [52]Конечно, мне хочется, чтобы мой сайт посещали больше людей, но я не хочу делать накрутку..
Во! Уже начинает слегка просматриваться реальная проблема.
А то "регистрация-регистрация"
Дурь несусветная эта ваша регистрация.
← →
просто так (2007-08-16 22:56) [53]А мне пофиг, пусть он качает и поудаляет сто раз, я хочу, чтобы другие пользователи, а тем более владельцы других сайтов не поставили у себя и не дали другим прямую ссылку на файл.
В чем проблема?
← →
просто так (2007-08-16 22:58) [54]Ну просвети меня, скажи, в чем моя проблема? Как бы ты поступил на моем месте, честно?
← →
Reindeer Moss Eater © (2007-08-16 22:59) [55]Конечно, мне хочется, чтобы мой сайт посещали больше людей, но я не хочу делать накрутку..
А тебе не кажется, что если один чел даст прямой линк десятерым другим челам, то твой сайт скорее посетят одиннадцать человек, а не один?
← →
просто так (2007-08-16 23:00) [56]Я открыл эту тему именно для того, чтобы избавиться от прямого линка
← →
Reindeer Moss Eater © (2007-08-16 23:01) [57]Ну тогда ты сам не знаешь что именно ты хочешь.
Хочешь что бы посетителей было больше, и при этом усложняешь им доступ к ресурсу.
← →
Reindeer Moss Eater © (2007-08-16 23:05) [58]Русская народная забава. Придумать проблему на ровном месте и героически её решать.
← →
просто так (2007-08-16 23:06) [59]Я хочу:
Чтобы зарегистрированных пользователей было больше.
Для этого зарегистрированные получают немножко больше привилегий, чем незарегистрированные, чтобы последние имели желание войти в число первых, если конечно предоставляемый мною ресурс им интересен, и они хотят загрузить его на свой компьютер бесплатно, и пользоваться на свое удовольствие.
Я не хочу:
Чтобы владельцы других сайтов не имели возможности поставить прямую ссылку на мой ресурс, если нужно то пусть поставят ссылку на мой сайт и все, а дальше посетитель регистрируется.
ЗЫ. ну детский сад какой-то. Как тебе еще объяснить?
← →
просто так (2007-08-16 23:08) [60]
> Reindeer Moss Eater © (16.08.07 23:05) [58]
Ну скажи мне, как бы ты поступил?
← →
Reindeer Moss Eater © (2007-08-16 23:09) [61]Ну будет их больше. Дальше-то что?
Шоколадку с каждых десяти получишь?
← →
ProgRAMmer Dimonych © (2007-08-16 23:09) [62]Эх, мне бы Ваши проблемы. У меня на хостинге все файлы, которые типа rar"ов или mp3-х можно скачивать только по ссылке со страницы, принадлежащей этому же аккаунту. Т.е. давать прямую ссылку бесполезно. А суть идеи - ищем хороший хостинг и забываем о проблемах.
← →
просто так (2007-08-16 23:14) [63]Нет, о шоколадках не было и речи, и не надо выдумывать.
> ProgRAMmer Dimonych © (16.08.07 23:09) [62]
Спасибо, у меня есть хороший хостинг, проблема была в [0], но полный ответ на свой вопрос я получил где-то в районе [30], но мне интересно, чего добивается Reindeer Moss Eater, задавая дурацкие вопросы.
> Reindeer Moss Eater ©
Тебе того же хочу сказать, проблема была, проблема решена, так чего же мы не можем решить? Что тут непонятного?
← →
Reindeer Moss Eater © (2007-08-16 23:16) [64]Что тут непонятного?
Цель-то какая?
← →
просто так (2007-08-16 23:18) [65]Ну зачем тебе моя цель?
Она здесь десять раз повторяется, и все в форме ответа на твои вопросы. Попробуй найди.
← →
Reindeer Moss Eater © (2007-08-16 23:20) [66]Здесь повторяется не цель, а блажь.
Хочешь посещаемости, но не хочешь линков на себя с других сайтов.
Сможешь это как-то объяснить?
:)
← →
Reindeer Moss Eater © (2007-08-16 23:23) [67]Пришел перец с другого сайта по приямому линку - пни его на свою главную и все дела.
Нет, я блин мудрый гудвин, я регистрацию буду у всех проверять.
Абалдеть
:)))
← →
просто так (2007-08-16 23:32) [68].
← →
просто так (2007-08-16 23:32) [69]Объясняю еще раз.
Это мой сайт: http://mysite.com
Это не мой сайт: http://notmysite.com
Это - ресурс на моем сайте: http://mysite.com/some_resource.zip
Специально для тебя - Все имена сайтов и ресурсов вымышлены, любые совпадения с реальными сайтами считать случайностью .
← →
просто так (2007-08-16 23:33) [70]Я хочу, чтобы ресурс на моем сайте не лежал на открытом месте, потому что нехороший владелец http://notmysite.com может у себя на сайте ставить ссылку http://notmysite.com/some_resource.zip, переходя по которой, пользователь скачает ресурс на моем сайте, даже не подозревая об этом.
Если уж сильно хочет, то пусть ставит ссылку http://mysite.com/some_resource.zip , тогда пользователи будут знать, откуда качают ресурс, это повысит рейтинг моего сайта.
← →
просто так (2007-08-16 23:35) [71]
> Пришел перец с другого сайта по приямому линку - пни его
> на свою главную и все дела.
Ну вот, наконец-то ты сказал что-то стоящее. Спасибо.
Буду очень благодарен, если расскажешь, как именно "пнуть".
Или об этом скажешь только в 150-м посту?
← →
Reindeer Moss Eater © (2007-08-16 23:39) [72]Проверил реферер. Не твой. Редирект на главную.
Я хочу, чтобы ресурс на моем сайте не лежал на открытом месте
Ты так ничего и не понял. Ты хочешь не этого, а чего-то другого. А это, как тебе кажется, поможет достич твоей цели.
Хотеть того, что курсивом это нонснес.
← →
просто так (2007-08-16 23:43) [73]не надо играть словами, я проблему описал уже сто раз, и если тебе непонятно, то можешь не отвечать, но все равно спасибо за ответ, хотя мне уже давно ответили и я пошел по другому пути.
← →
Reindeer Moss Eater © (2007-08-16 23:45) [74]Написал бы просто в самом начале: "Хочу славы и известности"
Было бы понятно.
← →
просто так (2007-08-16 23:48) [75]Тогда тебе надо было предупредить меня, что ты будешь задавать миллион дурацких вопросов, прежде чем ответить на мой, хотя прекрасно понимал проблему.
Если проблему, освещенную в самом первом посте, ты понял как "Хочу славы и известности", то это твои проблемы. И нечего мне голову морочить!
← →
Reindeer Moss Eater © (2007-08-16 23:50) [76]У нас в локалке тоже есть такие мудрые гудвины.
Первый выкачавший у него медиафайл выкладывает его на нормальный ресурс. Для людей.
А гудвин просто идет лесом.
Ты - гудвин. :)
← →
Reindeer Moss Eater © (2007-08-16 23:53) [77]нехороший владелец http://notmysite.com может у себя на сайте ставить ссылку http://notmysite.com/some_resource.zip, переходя по которой, пользователь скачает ресурс на моем сайте, даже не подозревая об этом.
Я тоже не подозреваю как по такой сцыле можно скачать some_resource.zip с твоего сайта
:)))
← →
просто так (2007-08-16 23:53) [78]Ты всем так отвечаешь на форуме?
← →
просто так (2007-08-16 23:56) [79]>> Ты гудвин
А ты просто словоблуд.
> Я тоже не подозреваю как по такой сцыле можно скачать some_resource.
> zip с твоего сайта
Почему же? Может скачать, и таких примеров миллионы
← →
Zeqfreed © (2007-08-17 00:14) [80]Вот блин, устроили дискуссию.
Простейший способ. При загрузке твоей страницы со ссылкой, вешаешь клиенту куку. Когда клиент у тебя запрашивает ресурс по ссылке, проверяешь, есть ли у него кука: если есть, отдаешь ему файл, если нет — шлешь его на страницу с ссылками, где ему вешается кука, показывается реклама, расхваливается ресурс и все в шоколаде.
Возможные проблемы.
1) Для того, чтобы скачать ресурс не зависящей от браузера утилитой, ей необходимо будет передать куку. В принципе, проблема не такая уж большая, все уважающие себя качалки это умеют делать.
2) Клиент может не принимать куки, но тогда он сам себе злобный Буратино.
3) Вешать куку надо будет со всех страниц своего сайте, где планируется размещение ссылки. Хотя, можно придумать более хитрую схему, тут уж как душа пожелает.
← →
Zeqfreed © (2007-08-17 00:15) [81]А вообще, жадничать не хорошо.
← →
просто так (2007-08-17 00:25) [82]спасибо
Страницы: 1 2 3 вся ветка
Текущий архив: 2007.09.16;
Скачать: CL | DM;
Память: 0.65 MB
Время: 0.046 c