Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Generisanje razlicitih linkova vezanih IP adresom!

[es] :: PHP :: Generisanje razlicitih linkova vezanih IP adresom!

[ Pregleda: 2122 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

milos036

Član broj: 87169
Poruke: 209
217.169.219.*



Profil

icon Generisanje razlicitih linkova vezanih IP adresom!18.12.2006. u 19:38 - pre 179 meseci
Imam ovakav problem. Naime treba mi skripta koja će mi svaki put generisati link za određini fajl.

Npr. ako se moj fajl nalazi na www.nesto.com/download/nesto.zip kako da napravim da taj fajl nikako ne bude dostupan na toj adresi vec da se svaki put kada neko klikne na download aktivira ovakav link www.nesto.com/download/file.ph...ad=787452435212e18a372453621e8... I da se taj link veze za IP adresu tog korisnika koji skida fajlove i da vazi samo za jednu sesiju znaci samo za jedan klik i da se nikada vise ne moze fajl skinuti sa tog linka.

Razume li neko nesto?
 
Odgovor na temu

miljakovic
Miljakovic Djordje
Kraljevo

Član broj: 122900
Poruke: 36
89.216.241.*



+1 Profil

icon Re: Generisanje razlicitih linkova vezanih IP adresom!19.12.2006. u 14:46 - pre 179 meseci
Pogledaj na ovoj adresi http://www.b92.net/tehnopolis/internet.php?nav_id=221541 tu ces naci program koji moze da ti pomogne. Naime, meni je trebalo da zabrani pristup sajtu korisnicima koji su iz recimo Engleske. Tu imas naredbe koje preuzimaju IP adresu korisnika. Tu IP adresu upises u tabelu koja ima dva polja: IP i jedno polje koje ima vrednosti 0 ili1. Tako da kad korisnik pristupi promenis polje sa njegovom IP na 1 i u skripti se prvo upitas if(to_polje==0) itd.
Ovo ti je samo jedno pesacko resenje a ti probaj da iskombinujes nesto. Moguce je da posoji i jednostavnije ali vidim da niko ne odgovara na problem tako da probaj to.
Pozdrav.

a cini mi se i da nisam bas najbolje razumeo sta treba da se uradi u linku...
 
Odgovor na temu

brainbuger

Član broj: 9647
Poruke: 411
80.93.236.*



+48 Profil

icon Re: Generisanje razlicitih linkova vezanih IP adresom!19.12.2006. u 16:23 - pre 179 meseci
Zanimljivo pitanje i mene je nesto slicno zanimalo. Mislim da bi jedno od jednostavnijih resenja bilo da sve fajlove (njihove url-ove) cuvas u jednoj tabeli gde bi svaki fajl imao svoj jedinstveni id. Na ovaj nacin bi tvoja download skripta skrivala pravu putanju:
http://www.nesto.com/download.php?file_id=1034

Pretpostavljam da sve ovo radis iz razloga da zelis da korisnik prodje kroz neke odredjene stranice pre nego sto moze da pokrene download fajla. Neko jednostavno resenje bi bilo da na nekoj nekoj od tih 'prethodnih' stranica setujes $_SESSION promenjivu recimo:
if (!isset($_SESSION['allow_download'])) {$_SESSION['allow_download'] = TRUE;}
a onda je proveris u download.php i dozvaljas download samo ako je TRUE. Nakon toga je vracas nazad na FALSE. Na ovaj nacin, samo korisnik koji dolazi sa odredjene stranice sa tvog sajta ima pravo da dobije fajl. Svako ko pokrene download.php?file_id=1034 nece dobiti nista, to jest, moze biti prosledjen na neku 'prethodnu' stranicu da ispravno dodje do fajla. Ovo bi bilo neko jednostavno resenje, bez pracenja IP adresa, sto znaci, neko malo iskusniji i uporniji bi ipak mogao doci do fajla.
 
Odgovor na temu

milos036

Član broj: 87169
Poruke: 209
217.169.219.*



Profil

icon Re: Generisanje razlicitih linkova vezanih IP adresom!19.12.2006. u 18:43 - pre 179 meseci
Ok da kažemo da se tako može odraditi. Ali mene sada interesuje samo jedna stvar. Vidi u PHP Fusion-u je urađeno nešto poput toga što ti pričaš oko download-a. I kada neko klikne na download downlad se pokreće iz sql-a a u sql je definisana tačna adresa npr. http://www.nesto.com/downloads/winrar.exe i kada neko pokrene download onako kako si ti rekao on bi samo link preuzimao iz tabele. A direktan link bi mogao svako da vidi u firefox-u a a ne u nekim moćnijim download manager rešenjima...

Ima li neko još predloga?
 
Odgovor na temu

brainbuger

Član broj: 9647
Poruke: 411
80.93.236.*



+48 Profil

icon Re: Generisanje razlicitih linkova vezanih IP adresom!20.12.2006. u 10:16 - pre 179 meseci
Naravno da samo cuvanje linkova u tabeli ne bi mnogo pomoglo. Pretpostavljao sam da vec imas neku download skriptu. Saljem ti primer jedne download funkcije, ja sam dodao onaj deo za proveru 'allow_download', ti modifikuj/izbaci sta ti ne bude trebalo. Kreiraj fajl .htaccess u folderu gde cuvas fajlove za download, ima vise nacina da ih zastitis, jedan bi bio da u .htaccess uneses sledece :
<FilesMatch "\.(zip|rar)$">
SetHandler application/x-httpd-php
</FilesMatch>
Ovako ce svi fajlovi u tom folderu koji imaju ekstenziju .zip ili .rar morati biti hendlovani samo od strane php-a, a ti ces se naravno pobrinuti da to bude samo tvoj download skript. Pri pokusaju da se direktno downloaduje fajl, download ce biti neispravan. Ne moze cak ni iz download managera.
Prikačeni fajlovi
 
Odgovor na temu

milos036

Član broj: 87169
Poruke: 209
217.169.219.*



Profil

icon Re: Generisanje razlicitih linkova vezanih IP adresom!20.12.2006. u 13:13 - pre 179 meseci
Nista te nisam sada pokontao... Sta ja sada konkretno treba da uradim? Malo se teze snalazim sa PHP-om.
 
Odgovor na temu

aXi_
Admir Dautovic
Rozaje

Član broj: 121845
Poruke: 66
82.208.236.*



+2 Profil

icon Re: Generisanje razlicitih linkova vezanih IP adresom!20.12.2006. u 14:26 - pre 179 meseci
@milos036, reci mi samo hoces li skripta da ti radi sa bazom podataka ili bez baze???
 
Odgovor na temu

milos036

Član broj: 87169
Poruke: 209
217.169.219.*



Profil

icon Re: Generisanje razlicitih linkova vezanih IP adresom!20.12.2006. u 14:33 - pre 179 meseci
Sa SQL bazom naravno.
 
Odgovor na temu

brainbuger

Član broj: 9647
Poruke: 411
80.93.236.*



+48 Profil

icon Re: Generisanje razlicitih linkova vezanih IP adresom!20.12.2006. u 14:47 - pre 179 meseci
Odgovorio sam ti na private da ne bi smo razvlacili ovde. Poz
 
Odgovor na temu

dr ZiDoo
Banja Luka

Član broj: 189
Poruke: 1728
87.250.104.*

Jabber: ZiDoo@elitesecurity.org
ICQ: 299539598
Sajt: zidoo.geek.rs.ba


Profil

icon Re: Generisanje razlicitih linkova vezanih IP adresom!21.12.2006. u 10:31 - pre 179 meseci
Za pocetak fajl: nesto.zip stavis hijerarhijsku jedan folder ispod "www" foldera. E sada code:
Code:

<?php

$file = "../nesto.zip";                                                       // putanja do fajla
$addr_md5 = md5($_SERVER['REMOTE_ADDR']);        //md5 hash ip adrese

$sql = "SELECT COUNT(*) FROM downloads WHERE code = '{$addr_md5}'";        // provjeri da li postoji hash u bazi
$results = mysql_fetch_array(mysql_query($sql));

if($results)                                                                      // ako postoji nista od downloada
{
          print "Vec si skino fajl!";
          die();
}
else                                                                                 // ako ne postoji isporucis mu fajl i upises IP u bazu
{
        $sql = "INSERT INTO downloads ('code') VALUES ('$addr_md5')";                // dodas adresu u bazi
        mysql_query($sql);
        
        $fp = fopen($file, 'r');
        $data = fread($fp, filesize($fp));                           // strpas fajl u varijablu

         $length = strlen($imagedata);
         header('Accept-Ranges: bytes');
         header('Content-Length: '.$length);
         header('Content-Transfer-Encoding: Binary');      // oznacis ga ko binarni da ga slucajno browser ne bi pokuso prikazati
         print($data);                                                         // ouptpu
}

?>


downlods tabela:
Code:

create table downloads (
code verchar(32)
);


Eto mozda ima gresaka u codu posto sam kuco u ovom muljavom boxu ali objasnio sam kak sta pa mozete sam ispravljati. viola.
tu nema kašike....
 
Odgovor na temu

[es] :: PHP :: Generisanje razlicitih linkova vezanih IP adresom!

[ Pregleda: 2122 | Odgovora: 9 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.