ďťż

[HTML] Bezpośredni dostęp do plików

       

Podstrony


telcocafe

Na stronie obsługuję logowanie, i tylko zalogowani użytkownicy mogą ściągać pliki. jeśli jednak user zna adres bezpośredni http://www.example.org/pliki/plik.rar ściągnie go i tak pomijając logowanie. Jak temu przeciwdziałać - najlepiej przekierowywując na stronę logowania.



Folder, w którym masz pliki blokujesz plikiem .htaccess
deny from all
Natomiast w folderze nadrzędnym (lub jakimkolwiek innym) tworzysz plik download.php, do którego będziesz GETem w zmiennej wysyłał parametry, np. download.php?plik=jakis_plik.exe

Zgodnie z parametrem wczytujesz odpowiedni plik z zabezpieczonego folderu, przesyłasz do przeglądarki nagłówek żądania wyświetlenia okienka pobierania i przesyłasz plik. Wygląda to mniej więcej tak:
if(isset($_GET['pobierz'])) {$pobierz=$_GET['pobierz']; $sciezka=basename('zabezpieczony_folder/'.$pobierz); if(file_exists($sciezka)) { $open=fopen($sciezka,'rb'); flock($open,1); $zawartosc=fread($open,filesize($sciezka)); flock($open,3); fclose($open); header('Content-Type: application/octet-stream'); header('Content-Length: '.strlen($zawartosc)); header('Content-Disposition: attachment; filename='.$pobierz); echo $zawartosc; exit;}}
@EDIT: literówka
Użytkownik kutar edytował ten post 08 wrzesień 2007, 11:39
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • nvm.keep.pl

  • Sitedesign by AltusUmbrae.