Gå til innhold

Anbefalte innlegg

Heisann!

 

Jeg har en zip-fil som brukere kan betale for via mobilteknologi, for deretter å laste ned filen i sin helhet til sin egen maskin.

 

Men hvordan kan jeg skjule plasseringen til denne filen? Altså slik at brukerne bare får lastet den ned, men ikke får greie på URL'en til filen og deretter kan spre denne for alle vinder...

 

Det skal også legges til at zip-filen som skal lastes ned vil være på ca. 1 GB, og den kommer antakeligvis til å ligge på en ekstern lagringsserver.

 

Kan dette gjøres på en "enkel måte"? Har forsøkt å lese meg opp litt på emnet på Google, men sitter likevel ikke igjen med noen helt klar måte å gjøre dette på.

 

Av serverhensyn bør vel ikke filen lastes inn i minne, for deretter å tilbys som en ren nedlastningstreaming til sluttbrukeren. Eller må det gjøres slik? Men det er kanskje ikke noen løsning så lenge webside og fil ikke ligger på samme server?

 

På forhånd takk for alle tips og kommentarer! :D

Endret av martinz
Lenke til kommentar
Videoannonse
Annonse

Hmm, du kan jo ikke bruke sider som: tinyurl.com som skjuler orginal URL. Fordi da kan de bare ta tinyurl-en og gi den videre "/

 

Da var det med tinyurl.com og ligende sider løst.

Så vi må finne en annen vei da!

Lenke til kommentar

bruk et nedlastings script som gir de tilgang til start nedlastingen x antall ganger, så legger du filen utenfor www mappen så ikke den er tilgjengelig med direkte url, kun gjennom scriptet.

 

bruker selv virtuemart som lar de laste ned etter paypal betalingen bekreftet, jeg selger også store filer så jeg gir de 3nedlastinger så tar jeg 10$ for 3 ekstra nedlastinger utover de for og dekke kostnaden av båndbredde.

Endret av cruzader
Lenke til kommentar

Eler bare krypter ZIP filen med et passord. Er passordet langt nok vil det være nesten umulig å hacke det. Så vidt jeg veit er det kunn BruteForce metoden som kan knekke et passordbeskyttet ZIP dokument og bruker du et passord som inneholder tall, bokstaver og andre kryptiske karakterer så vil et bruteforce program bruke evigheter på å knekke passordet. Dermed forenkler du ting ved at du slipper lage en masse kompliserte url greier samt at du enkelt bare trenger distribuere passoerdet.

Lenke til kommentar
bruk et nedlastings script som gir de tilgang til start nedlastingen x antall ganger, så legger du filen utenfor www mappen så ikke den er tilgjengelig med direkte url, kun gjennom scriptet.

Men det med å plassere utenfor www er vel egentlig ikke noen aktuell løsning så lenge filen lagres på en ekstern server? For da har vel ikke scriptet på hovedserveren noe mer tilgang til området utenfor www på filserveren?

Endret av martinz
Lenke til kommentar
Eler bare krypter ZIP filen med et passord. Er passordet langt nok vil det være nesten umulig å hacke det. Så vidt jeg veit er det kunn BruteForce metoden som kan knekke et passordbeskyttet ZIP dokument og bruker du et passord som inneholder tall, bokstaver og andre kryptiske karakterer så vil et bruteforce program bruke evigheter på å knekke passordet. Dermed forenkler du ting ved at du slipper lage en masse kompliserte url greier samt at du enkelt bare trenger distribuere passoerdet.

Slik jeg ser det vil dette kunne bli et båndbreddesluk av dimensjoner, iogmed at mange kanskje forsøker å laste ned filen for å se om de klarer å åpne den. Et passord kan jo også fint distribueres til andre.

Endret av martinz
Lenke til kommentar

Jeg forklare meg kanskje litt tungvint i første innlegg, og vil gjøre en presisering:

 

Det jeg forsøker å få til er at etter at brukeren har betalt for innholdet med mobilen sin vil vedkommende få presentert en link (f.eks. http://www.xxxxx.no/lastned.asp?id=HrGRJSR) eller knapp som skal åpne et nedlastingsvindu når brukeren trykker på den.

 

Jeg ønsker ikke at brukeren skal se den fysiske plasseringen til filen vedkommende laster ned. Altså skal brukeren kun få lasted ned filen.

 

Man kan jo sammenligne det med f.eks. http://rapidshare.com/. Der laster man ned filer, men ser ikke hvor filene kommer fra.

 

Jeg har forøvrig ikke mulighet til å ha filen(e) i en database, som ellers kanskje kunne vært en løsning?

Lenke til kommentar
  • 3 uker senere...
  • 1 måned senere...

Liten sidesprang. Hvordan i huleste vide verden skal du hindre att brukeren sprer selve filen privat videre osv?

Om de har lyst å dele programmet ditt. Så er urlen lettest ja, men ingen problem for å dele denne privat heller. Att det skal vær så veldig sikkert med dette skjønner jeg liten grunn i.

Muligheten er nok en memorystream direkte til brukeren. Men da vil du likevel få problemet med å overheade serveren for hver request. Ettersom dette vil laste filen i memoryen for så å laste den ut igjen for HVER gang.

 

Men dette blir overhead ettersom filen ligger lagret på en annen server igjen.

 

Skal du hide urlen helt og sikre deg for att de ikke kan sende urlen videre, så må du ty til ett skript som streamer filen fra ekstern lokasjon til å streamer filen til sluttbruker. Tungvint!

Lenke til kommentar
Liten sidesprang. Hvordan i huleste vide verden skal du hindre att brukeren sprer selve filen privat videre osv?

Om de har lyst å dele programmet ditt. Så er urlen lettest ja, men ingen problem for å dele denne privat heller. Att det skal vær så veldig sikkert med dette skjønner jeg liten grunn i.

Muligheten er nok en memorystream direkte til brukeren. Men da vil du likevel få problemet med å overheade serveren for hver request. Ettersom dette vil laste filen i memoryen for så å laste den ut igjen for HVER gang.

 

Men dette blir overhead ettersom filen ligger lagret på en annen server igjen.

 

Skal du hide urlen helt og sikre deg for att de ikke kan sende urlen videre, så må du ty til ett skript som streamer filen fra ekstern lokasjon til å streamer filen til sluttbruker. Tungvint!

 

Jeg tror du må over på et system som generer nedlastbare adresser.

 

BrukerX med passordY får en link som heter filplasseringroot/folder/kryptert_hashet_whatever_link.zip

 

Så kan du ved hjelp av et script på serveren sjekke om linken som er skrevet inn er gyldig (dette gjør du ved å kryptere passord som er skrevet inn og sammenligne med brukerens passord hash), vist det får brukeren laste ned, vist ikke så 404 error. Er

 

Ble litt knotete dette her, men hovedpoenget er at jeg ville prøvd med genererte urler. For om brukeren da deler filen / URL sin så blir det registrert i deres nedlastingsregnskap, og de fleste vil gi bort en fil de allerede har betalt for dersom det fører til at de ikke får laste den ned på ny.

 

PS! Dette var bare i grove trekk. Det finnes helt sikkert andre her som er bedre en meg på hvordan du skal implementere et sånn system. Og som en annen i tråden her så kan jeg nevne at VirtueMart er veldig ok å bruke til f.eks å selge filer/nedlastinger.

 

Du kan ha filer i databasen din, men tror at det å ha zip filer p 1GB liggende å slenge i en database kan bli litt ufint. Jeg tror hvertfall mange leverandører av servertjenester vil reagere på dette.

 

Jeg skjønner enda ikke hvorfor du ikke vil expose selve filplasseringen da. Selv om folk vet hvor filen ligger betyr det ikke at de får tak i den. De kan ligge utenfor webroot f.eks. Eller beskyttet med .hacess (apache) eller lignende.

 

 

Mvh.

 

Kristian.

Lenke til kommentar

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...