webForumDet fria alternativet

passwordskydda nerladdningsfilerna???

3 svar · 247 visningar · startad av xtreme

xtremeMedlem sedan juli 20002 056 inlägg
#1

Har en sida som innehåller en medlemsida. På medlemsidan har jag några filer för nerladdning. Hur gör man för att förhindra att personer kopierar adressen till en fil och lägger den på sin egen sida. För även om jag har själva sidan passwordskyddad går det ju att ladda ner en fil om man har den fulla adressen. Hur ska jag göra för att personer som inte är inloggade inte heller ska kunna ladda ner filerna?

------------------
Xtreme

HermanMedlem sedan maj 2001431 inlägg
#2

Kör du PHP4 kan du ju alltid använda sessions och sköta laddning mha av en PHP som ekar ut filen, istället för direktreferens.

------------------
En eller annan godbit från pannan

KatharinaMedlem sedan dec. 20017 inlägg
#3

Detta är nästan omöjligt att åstadkomma med php, eller i alla fall dumt.

I Apache har du stöd för .htaccess som du bör använda dig av.

Om användaren känner till den direkta länken till filen så kan du inte skydda filen med php.

Om du istället bygger en funktion som när det klickas på länken kopierar filen från en ”säker” katalog som inte går att komma åt från WWW till en där det går att komma år och helts är unik för denna användare och detta besök och samtidigt med JavaScript accessar även denna nya länk så blir det som om dom klickat direkt på en fil. Problemet är, hur vet du när du ska radera filen, alltså när din klient laddat ner den? Inte så smart lösningen men på detta sätt kan du simulera lite högre säkerhet än den du idag har.

Lycka till!

------------------
Även tjejer kan programera!

Johannes\PMedlem sedan jan. 200230 inlägg
#4

Har inte testat själv, men en rätt enkel, kanske inte så säker, lösning är att kolla om användaren kommer från din domän med hjälp av $HTTP_REFERER.

$HTTP_REFERER
The address of the page (if any) which referred the browser to the current page. This is set by the user's browser; not all browsers will set this.

Låter rätt osäkert måste jag säga.

$REQUEST_URI
The URI which was given in order to access this page; for instance, '/index.html'.

Det där kanske kan ge dig en hint om hur du enkelt kan lösa det annars.

Lycka till!

------------------
Johannes Schill
http://www.polyester.se
Form · Interaktivitet · Uppmärksamhet

130 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)