IMHO.WS

IMHO.WS (http://www.imho.ws/index.php)
-   Веб-программирование (http://www.imho.ws/forumdisplay.php?f=29)
-   -   Ограничение скачки на IP (http://www.imho.ws/showthread.php?t=75211)

DJLOVE 07.12.2004 03:17

Ограничение скачки на IP
 
Есть ли скрипт или хз что, который ограничевает пользователя в подключениях (на каждый IP)?

Например чтобы скачивали файл не больше чем 3-конекта-на-IP или 1 вообще...

Как это можно реализовать?

quaker 08.12.2004 02:19

во всех нормальных фтп серверах это должно быть в настройках реализовано

Jlamepok 08.12.2004 10:48

сессиями... шифруй папку и потом спомощью db проверяй (все на самом деле просто, но что бы обьяснить надо много времени)

DJLOVE 08.12.2004 13:52

quaker скачивается с http a не с ftp

Jlamepok бррр,
Цитата:

сессиями... шифруй папку и потом спомощью db проверяй
спасибо конечно но нифига непонятно (для меня покрайней мере)

Ghost 08.12.2004 14:06

DJLOVE
Как вариант - делай в http-сервере перенаправление с нужного файла (exe, dll и проч.) на специальный скрипт (при помощи mod_rewrite в apache, например), который:
1. проверяет, запущен ли этот скрипт с этого ip уже - смотрит, записан ли этот ip где-нибудь, например, каком-то файле или БД (если да - конец скрипта)
2. записывает текущий ip в то самое место (файл или БД)
3. передает нужный файл
4. стирает из того самого места текущий ip.

qwebec 08.12.2004 14:50

DJLOVE
а web сервер какой? apache?

DJLOVE 08.12.2004 18:21

qwebec угумс, апачи и все причендалы :biggrin:

Ghost 08.12.2004 18:27

DJLOVE
В принципе можно даже без перенаправления: размещаешь файло НЕ в web-пространтсве (т.е. не в папке, к которой можно обратится через http, а где вне корня web-сервера), а для скачки файла рисуешь свой скрипт, например, download.pl и вызывается он, например, так: download.pl?utilities/cd/burner/nero/6.6.0.3/setup.exe, а делает этот скрипт то, что я описал выше...

Fiery_Fenix 09.12.2004 04:16

Цитата:

Ghost:
размещаешь файло НЕ в web-пространтсве
Это не обязательно, просто закинуть в ту папку где файлы .htaccess с параметрами deny from all.
А вообще я бы сделал скрипт который принимает в GET в виде параметра id файла (все остальные атрибуты хранятся в БД), затем добавляет/проверяет в спец. табличке запись вида (id, ip, count), если count больше заданого - 404/403, меньше - отдает Content Header и добавляет к count 1.

Jlamepok 09.12.2004 11:16

DJLOVE Ну вот смотри...
есть папка у тя например ./www/download/musik/
вот ты ее никому не показываешь, а в ссылках, например генеришь в зависимости от сессии - например на 30 минутак ссылку типа http://yoursite.com/29sdfghlkj43987klhdsg97843/1.mp3, вся эта абракадабра - сессия юзверя которая выдаеться либа мд5 + юнитайм, либо sessionstart();.. - это раз

два есть в бд таблица например site_session - в ней колонка dwd_id - вот если он че-нить качает - туда вноситься например 1.mp3|2.mp3|3.mpeg, - после чего когда скрипт обновляеться - кум-нить другим - идет проверка на count(explode("|",$r['dwd_id'])); - вот так - если больше $max_dwd_num (=2), значит - выдать вместо замаскированной папки - мессагу ху*я и тот кто качает - подождет пока закачаеться первый файл, после только начнет качать фторой...

а вообще посмотри антилич

qwebec 09.12.2004 18:38

DJLOVE
мне кажется решение в установке дополнительных модулей типа mod_limitipconn


Часовой пояс GMT +4, время: 21:15.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.