Gå til innhold

Tillate streaming, blokkere nedlasting


Anbefalte innlegg

Skrevet

Er det mulig med PHP eller .htaccess å blokkere direkte nedlasting av .mpg-filer, men tillate streaming?

 

Streaming-koden er jo:

<EMBED SRC="movie.mpg" border="0" type="application/x-mplayer2"></EMBED>

 

Da står jo filnavnet der og den kan lastes ned enkelt...

 

Er det mulig å hente den via PHP-buffer, eller hva det nå heter i stedet, slik at adressen er "skjult"?

Videoannonse
Annonse
Gjest Slettet+6132
Skrevet

Tror det er mer eller mindre umulig. For å kunne lese streamen må du ha leserettigheter på filen, og da vil du uansett kunne laste den ned. Er det så farlig da? :hmm:

Skrevet

Vett ikke om det er mulig med .mpg men i mp3 går det.

 

Jeg har ikke fått det til enda men driver å jobbe med sakken. Jeg sier ifra når jeg er ferdig.

Skrevet

movie.php :

<?PHP
header('Content-type: video/mpeg');
readfile('/home/movdir/movie1.mpg');
?>

 

Så lar du /home/movdir værra ei mappe som php har tilgang til, men som ikke er tilgjengelig for allmennheten....

 

Når du skal bruke dette skriptet så bruker du denne koden der filmen skal vises:

<EMBED SRC="movie.php" border="0" type="application/x-mplayer2"></EMBED>

Skrevet

Tilnærmet umulig skal det hvertfall ikke være. Hultsfred.tv hadde hundrevis av konserter for streaming som ikke kunne lastes ned. Alle NRK-streamene er også sånn.

Skrevet

Jeg kom jo med et eksempel som viste at det var mulig...

Har akkurat testa det ut, og det funker, riktignok med noen ulemper, men disse kan sikkert fikses på en måte...

Skrevet

thomfre:

Takk for tipset og det fungerer "nesten".

Det er jo ingenting som hindrer brukeren i å åpne movie.php i Media Player og dermed "lagre som"... forslag til løsning? :)

Skrevet

Kom på noe selv, men vet ikke om et er mulig/virker?

Man sjekker HTTP_REFERER i movie.php og om den inneholder gyldig url, for åpner man i WM får man ikke referer...

 

Ulempen er de som har software som ikke sender fra seg HTTP_REFERER da...

 

Kan vel også sjekke USER_AGENT?

 

Hva tror du/dere om det?

Skrevet

Hva med å generere et random filnavn for hver request, som fungerer nøyaktig én gang, slik at man alltid må inn på siden for å hente et nytt filnavn?

Skrevet
finnes det ikke programmer for å ta opp/lagre film/lyd som blir streamet da?

Nettopp derfor jeg tror den metoden som "tvinger" en bruker til å besøke siden for å se filmen er den beste. Kanskje kombinert med streaming så er det perfekt. :)

Skrevet

Løsningen ble slik:

Ved lasting av siden hvor filen skal streames genereres en MD5 av time() og et salt. Denne lagres i en tekstfil.

 

Den legges i movie.php?c=$crypt i <embed src>.

I movie.php leses tekstfilen og deretter sjekkes den mot $_GET['c'] og "readfile" av videoen hvis den matcher, deretter genererer den en ny md5 og overskriver den i filen...

 

Ulempe:

Ved mye trafikk og 2 stk laster en fil rette etter hverandre vil ikke $crypt stemme for den første brukeren.

 

Men, nå kom jeg jo selvfølgelig til å tenke på om det ikke er mulig å bruke sessions til dette?

Sette en session ved lasting av siden filen streames på og sjekke den i movie.php og deretter ta session_destroy igjen.

Vil ikke det fungere på samme måte, bare uten ulempen nevnt over?

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...