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

Skrivanje putanje fajla

[es] :: PHP :: Skrivanje putanje fajla

[ Pregleda: 2886 | Odgovora: 13 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

5h0ck
Beograd

Član broj: 14896
Poruke: 322
*.static.ikomline.net.



+1 Profil

icon Skrivanje putanje fajla17.05.2008. u 15:07 - pre 193 meseci
Za ovo pitanje ću se pozvati na youtube (YT) resenje, jer mi je to odgovarajuca solucija. Dakle, na YT prikazivanje playera i fajla u njemu se određuje preko URL-a http://www.youtube.com/watch?v=GsCIG58PSYs gde GsCIG58PSYs predstavlja indifikator fajla

ovo je kod koji prikazuje player

Code:

<embed id="movie_player" width="480" height="395" flashvars="vq=null&video_id=GsCIG58PSYs&l=47&sk=IkcB4sVN7f7fM9fM6rKu9AApXEQMFKWBU&fmt_map=&t=OEgsToPDskKmIyiG-UM2kzftkfIkmzFk&hl=en&plid=AARNbS11m2JnqDF3AAAAAAA4AAA&playnext=0&enablejsapi=1" allowfullscreen="true" quality="high" bgcolor="#FFFFFF" name="movie_player" style="" src="/player2.swf" type="application/x-shockwave-flash"/>


opet izdvajam identfikator za video fajl video_id=GsCIG58PSY

Imam flash mp3 player koji da bi pustio pesmu mora da ima navedenu putanju do fajla. Ta putanja, kao i fajl se vidi što znači da može i da se preuzme, a ja bio želeo to da rešim na YT način.

O čemu se tu zapravo radi i kako se generiše ovaj ID koji je sličan md5 kripciji samo kraći?
Hvala.

Inače, primer koji sam uzeo za YouTube je zanimljiv i vredi pogledati.
 
Odgovor na temu

Nemanja Avramović
Engineering Manager
MENU Technologies
Beograd, Srbija

Moderator
Član broj: 32202
Poruke: 4391
77.46.217.*

Sajt: https://avramovic.info


+46 Profil

icon Re: Skrivanje putanje fajla17.05.2008. u 16:11 - pre 193 meseci
Kako YT generiše kod to ne znam, ali oni imaju plejer specijalno pravljen za njih tako da mogu da ga zakomplikuju "do koske" ono što ti možeš da uradiš, ako koristiš neki od poznatih plejera, jeste da pozoveš npr. sajt.com/identifikator.mp3 gde je identifikator neki ID (ne mora ID kolona u tabeli da bude) mp3 fajla u bazi, a onda to sa mod_rewrite prepišeš na neki PHP fajl uz pomoć kojeg ćeš na osnovu ID-a da serviraš MP3 fajl koji će plejer pročitati sa neke treće lokacije.
Naravno, ovako će svako moći da skine mp3 fajl Ali i video snimke sa YT možeš skinuti, tako da...

Alternativa je da plejerov SWF direktno komunicira sa PHP skriptom (mislim da je moguće, ali ne znam kako) i onda se browseru pored IDa neće ništa slati tako da SWF može da doda neki svoj checksum koji će PHP fajl da prepozna i na osnovu toga da mu servira fajl, ali za to ti treba posebno pisan plejer.

edit:

E, sad se setih, radio sam nešto ranije slično što može da posluži.
Ako pogledaš sledeći link trebalo bi da se pojavi plej dugme. Klikom na njega kreće pesma.
http://www.eyesburnmusic.com/multimedia_audio.php?song=Soya

Ako analiziraš kod videćeš da mp3 servira mp3/mp3.php
Ako odeš direktno na link koji servira pesmu, trebalo bi da dobiješ "Di ces?" ()
http://www.eyesburnmusic.com/mp3/mp3.php?song=Soya.mp3
Ako odeš direktno na URL pesme, dobiješ 404 grešku, jer fajl Soya.mp3 ne postoji.
http://www.eyesburnmusic.com/mp3/Soya.mp3

Fora je u tome da stranica na kojoj je plejer setuje u sesiji jednu promenljivu koja kaže da može da se pusti pesma, a mp3.php proverava to i onda, ako nema promenljive u sesiji - izbacije "Di ces?" a ako ima onda servira mp3 fajl i odmah izbacuje promenljivu iz sesije, tako da sledećim pozivanjem fajla mp3.php promenljive više nema u sesiji i pesma neće biti servirana.

E sad, ovo radi ako plejer direktno pušta mp3, ali ako dobija xml listu kao većina plejera sa kojim sam imao prilike da se sretnem, onda nešto mora da se menja.

p.s. Bug se javlja kod stopiranja plejera pa ponovnog puštanja: pri ponovnom puštanju plejer će opet zatražiti pesmu od fajla mp3.php a pošto nema promenljive u sesiji, fajl će mu ispisati tekst umesto pesme, tako da plejer neće moći ponovo da pusti pesmu.
I da, plejer mora da ima opciju za autoplay aktiviranu, jer u suprotnom neće povući fajl i promenljiva će ostati u sesiji, tako da je dovoljno da neko otvori stranicu gde je plejer, a odmah zatim (pre pritiska na "play") mp3.php i dobiće mp3 fajl. Ako uključiš autoplay, do ovoga neće doći.

[Ovu poruku je menjao Nemanja Avramović dana 17.05.2008. u 17:59 GMT+1]
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
 
Odgovor na temu

5h0ck
Beograd

Član broj: 14896
Poruke: 322
*.static.ikomline.net.



+1 Profil

icon Re: Skrivanje putanje fajla18.05.2008. u 10:54 - pre 193 meseci
Hvala Nemanja na opširnijem odgovoru. ;)

Da, pokušavo sam to sa mod_rewrite-om, ali opet ista priča u suštini.
Međutim, totalno sam smeo sa uma da mogu da izmenim swf i u njemu unesem početnu putanju ;)

Ovo sa sesijom je takođe zanimljivo samo mi nije jasno kako se izgubi sesija posle pauziranja pesme?!?
Zar ta sesija nije izgenerisana samo na toj strani i ne znam kako je povezana sa playerom?
 
Odgovor na temu

5h0ck
Beograd

Član broj: 14896
Poruke: 322
*.static.ikomline.net.



+1 Profil

icon Re: Skrivanje putanje fajla18.05.2008. u 11:26 - pre 193 meseci
Kada sam već ovde, imam problema sa čitanjem fajla preko php-a, ili streaming...

Kod za pozivanje fajla je
Code:
flashvars="width=470&height=20&file=pesma.php"


U pesma.php sam ubacio

Code:
header('Content-Length: ' . filesize("pesma.mp3"));
header("Cache-Control: no-cache, must-revalidate");
header("Content-type: audio/mpeg");
readfile("pesma.mp3");


i kada otvorim samo taj fajl - radi.

Kada ga pozovem na gore prikazan način ne radi... ???
 
Odgovor na temu

Nemanja Avramović
Engineering Manager
MENU Technologies
Beograd, Srbija

Moderator
Član broj: 32202
Poruke: 4391
77.46.217.*

Sajt: https://avramovic.info


+46 Profil

icon Re: Skrivanje putanje fajla18.05.2008. u 12:05 - pre 193 meseci
Možda tvoj plejer ne radi sa php fajlovima, odnosno filtrira da li mu je prosleđen mp3 ili neki drugi fajl. Rewrite-uj pesma.mp3 na pesma.php pa probaj tako.

Što se bug-a sa sesijom tiče: Sesija se izgubi odmah posle serviranja fajla. Pauziranje pesme i nastavljanje lepo radi jer je pesma učitana u plejeru, ali stopiranje pesme pa ponovno puštanje ne radi jer se ponovo učitava pesma, a sesije više nema. Evo ti primer:

plejer.php
Code:

<?php
session_start();
$_SESSION['play'] = true;
?>

<embed blabla... flashvars="width=470&height=20&file=pesma.php"...


pesma.php
Code:

<?php
session_start();
$play = $_SESSION['play'];

if (!$play) {
  die('skidanje pesme je zabranjeno');
}
else {
  unset($_SESSION['play']);
  session_destroy();
  header("Content-type: audio/mpeg");
  //ostali headeri, da ne prepisujem
  readfile('fajl.mp3');
}
?>


Kad korisnik otvori direktno pesma.php sesije nema i dobija poruku da ne može skinuti fajl.
Kad korisnik otvori plejer.php kreira se sesija, plejer povuče pesma.php, sesija postoji, fajl se servira i sesija se uništava, tako da ponovno pozivanje fajla pesma.php bilo od strane korisnika ili plejera rezultuje u neserviranju pesme (a kad stopiraš pesmu i pustiš opet, plejer izbacuje pesmu iz memorije i ponovo je učitava sa servera, kao da je direktno pozvan fajl pesma.php).
Ako se refreshuje strana plejer.php, sesija se ponovo kreira i pesma se pušta, nakon čega se odmah uništava sesija.

Ako ti nije uključen autoplay, korisnik otvori plejer.php, sesija se napravi. E sad korisnik može da ručno pozove pesma.php i dobiće mp3 fajl jer sesija nije uništena, zato što se ona uništava kad se prvi put pozove pesma.php posle kreiranja sesije (posle pozivanja plejer.php). Zato uključiš autoplay da bi prvo pozivanje obavio swf plejer, a ne korisnik preko browsera

Nadam se da je sad malo jasnije?
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
 
Odgovor na temu

5h0ck
Beograd

Član broj: 14896
Poruke: 322
*.static.ikomline.net.



+1 Profil

icon Re: Skrivanje putanje fajla18.05.2008. u 12:52 - pre 193 meseci
Aha, u tome je caka...

Koristim ovaj player.

Veoma je složen proces celog playera i omogućava veliki niz mogućnosti emitovanja kako .mp3, .flv tako i ostalih fajlova.
Pronašao sam kod njega mogućnost da postavim prefix URL u samom swf-u tako da time rešavam problem putanje plus još imam mogućnost da ga mod_rewrite -ujem. Znači ostaje mi još samo da otkrijem na koji način da pozivam .php umesto .mp3 fajla...
 
Odgovor na temu

1r0nM4n
Nenad Vasić
Web Developer
Beograd

Član broj: 55970
Poruke: 441
*.static.ikomline.net.

ICQ: 303614173
Sajt: www.nenadvasic.com


+1 Profil

icon Re: Skrivanje putanje fajla19.05.2008. u 07:52 - pre 193 meseci
Koristim i ja JeroenWijering player na MySpace-u. Pošto on ima mogućnost da koristi playlistu u .xml formatu ubacio sam u source flash-a putanju do tog .xml fajla. Kada neko pogleda HTML kôd gde je ubačen flash neće videti putanju do playliste.

Playlistu pravi PHP:

Code:

// $songs je (sortirani) niz pesama

echo "<playlist version=\"1\" xmlns=\"http://xspf.org/ns/0/\">";
echo "\n\n<!-- 1r0nM4n - www.irondev.net - www.myspace.com/nenadbg -->";
echo "\n<!-- Total songs: ".count($songs)." -->\n";
echo "\n<trackList>";
foreach ($songs as $key => $val) {
    echo "\n<track>\n";
    foreach ($val as $key1 => $val1) {
        if($key1 == "creator") echo "<creator>".$val1."</creator>\n";
        else if($key1 == "title") echo "<title>".$val1."</title>\n";
        else if($key1 == "location") echo "<location>".$location.$val1."</location>\n";
        else if($key1 == "identifier") echo "<identifier>".$val1."</identifier>\n";
        
    }
    echo "</track>\n";
}

echo "</trackList>\n</playlist>";


U source-u flasha imam:

Code:
var height = 250;
var width = 430;
var file = "http://static.irondev.net/****/********.xml";
//var displaywidth = 0;
var showstop = true;
var repeat = list;
var shuffle = false;
var showdownload = false;


Na ovaj način URL do playliste ili do pesama može se videti samo kada se pogledaju HTTP header-i koje browser šalje. Može se smatrati da su putanje skrivene s obzirom da većina ljudi ne zna kako to da vidi..

p0zz
 
Odgovor na temu

Predrag Supurovic
Pedja YT9TP
Užice

Član broj: 157129
Poruke: 6275

Sajt: pedja.supurovic.net


+1570 Profil

icon Re: Skrivanje putanje fajla19.05.2008. u 10:01 - pre 193 meseci
Sve dok vas browser ucitava externi dokument nema nacina da saktijete putanju do tog dokumenta, osim da zakomplikujete njeno otkrivanje. U vise navrata sma nailazio na takve pokusaje i nijedan nije uspeo da sakrije dokument vec samo da oteza nalazenje putanje.

Najocigledniji nacin je da se disasemblira flash objekat i u kodu pronadje kako on ucitava dokument ali ni to nije neophodno, dovoljno je propustiti konekcije kroz proxy i na proxy-ju logovati sve upite pa ce se sve putanje same otkriti.


 
Odgovor na temu

1r0nM4n
Nenad Vasić
Web Developer
Beograd

Član broj: 55970
Poruke: 441
*.static.ikomline.net.

ICQ: 303614173
Sajt: www.nenadvasic.com


+1 Profil

icon Re: Skrivanje putanje fajla19.05.2008. u 11:38 - pre 193 meseci
Citat:
dovoljno je propustiti konekcije kroz proxy i na proxy-ju logovati sve upite pa ce se sve putanje same otkriti.

Jednostavnije je sa Firefox-om i ovim: Live HTTP Headers
 
Odgovor na temu

Nemanja Avramović
Engineering Manager
MENU Technologies
Beograd, Srbija

Moderator
Član broj: 32202
Poruke: 4391
*.adsl.gonet.rs.

Sajt: https://avramovic.info


+46 Profil

icon Re: Skrivanje putanje fajla19.05.2008. u 12:15 - pre 193 meseci
Citat:
Sve dok vas browser ucitava externi dokument nema nacina da saktijete putanju do tog dokumenta, osim da zakomplikujete njeno otkrivanje. U vise navrata sma nailazio na takve pokusaje i nijedan nije uspeo da sakrije dokument vec samo da oteza nalazenje putanje.


Naravno da nema šanse da se sakrije, ali može se kontrolisati kad se može pristupiti fajlu. Primer je ovo što sam gore objašnjavao.
Ni to nije teško zaobići, pogotovo zato što sam sad detaljno opisao postupak kako sve to radi, ali barem će običnim posetiocima biti koliko-toliko teže da skinu fajl
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
 
Odgovor na temu

Nemanja Avramović
Engineering Manager
MENU Technologies
Beograd, Srbija

Moderator
Član broj: 32202
Poruke: 4391
*.adsl.gonet.rs.

Sajt: https://avramovic.info


+46 Profil

icon Re: Skrivanje putanje fajla19.05.2008. u 12:22 - pre 193 meseci
Citat:
1r0nM4n: Koristim i ja JeroenWijering player na MySpace-u. Pošto on ima mogućnost da koristi playlistu u .xml formatu ubacio sam u source flash-a putanju do tog .xml fajla. Kada neko pogleda HTML kôd gde je ubačen flash neće videti putanju do playliste.
...
Na ovaj način URL do playliste ili do pesama može se videti samo kada se pogledaju HTTP header-i koje browser šalje. Može se smatrati da su putanje skrivene s obzirom da većina ljudi ne zna kako to da vidi..


http://www.fileden.com/files/2...%20%28Cirez%20D%20Remix%29.mp3

ovo?

bez gledanja u headere
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
 
Odgovor na temu

1r0nM4n
Nenad Vasić
Web Developer
Beograd

Član broj: 55970
Poruke: 441
*.opera-mini.net.

ICQ: 303614173
Sajt: www.nenadvasic.com


+1 Profil

icon Re: Skrivanje putanje fajla19.05.2008. u 18:31 - pre 193 meseci
Cini mi se da sam tebi dao link do playliste na msn-u? Nije meni ni bitno toliko da li ce neko da provali ili ne.. Vazno mi je samo da ne "trosim" bandwith previse...
 
Odgovor na temu

Nemanja Avramović
Engineering Manager
MENU Technologies
Beograd, Srbija

Moderator
Član broj: 32202
Poruke: 4391
91.150.103.*

Sajt: https://avramovic.info


+46 Profil

icon Re: Skrivanje putanje fajla19.05.2008. u 18:56 - pre 193 meseci
Nope, mislim da mi nisi dao link. A čak i da jesi, nisam ga koristio sad
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
 
Odgovor na temu

sojic
Dalibor Sojic
Makedonija

Član broj: 7051
Poruke: 796
80.77.154.*

Sajt: right-sock.net


+1 Profil

icon Re: Skrivanje putanje fajla23.05.2008. u 23:14 - pre 192 meseci
Pre neko vreme postavio sam temu, ali da se nadovezem.

Kako da "sakrijem" mms lokaciju?

Znaci... slicna problematika, samo sto osven file imam streaming mms://ip/video

Ovaj deo je bitan

Code:


  header("Content-type: audio/mpeg");
  //ostali headeri, da ne prepisujem
  readfile('fajl.mp3');



Koji header da posaljem za MMS protokol i kako da uradim "readfile" (dali ce da radi)?
routing protocols enable routers to route routed protocols!
 
Odgovor na temu

[es] :: PHP :: Skrivanje putanje fajla

[ Pregleda: 2886 | Odgovora: 13 ] > FB > Twit

Postavi temu Odgovori

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