Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Obsługa plików/katalogów
Forum PHP.pl > Forum > PHP
umatik
Potrzebuję zabezpieczyć przechowywane na serwerze, załączone do formularza pliki. W jaki spsób moża je zabezpieczyć przed pobraniem, wpisując bezpośredni url pliku np.: http://www.ja.com/dlc/nazwa.pdf

ps nie chcę też przechowywać plików bezpośrednio w bazie.
!*!
Wyrzuć katalog z nimi poza /public_html na serwerze.
umatik
ok spróbuję tak zrobić.

Oj teraz widzę, że mało precyzyjnie objaśniłem o co mi chodzi:
generalnie użytkownik może wysłać plik na serwer używając odpowiedniego formularza. Do plików które wysyła na serwer dostęp mogą mieć tylko zalogowanie użytkownicy, bezpośredni url ma nie działać.
acidm
!*! Dał ci już odpowiedź .Katalog upload dajesz ponad głowny katalog , w ten sposób nie będzie on dostępny przez url ale dla twoich skryptów php bedzie.
umatik
no, ok ale jak mam się teraz go pobrać, teraz wymuszam pobieranie plików za pomocą dlc.php:
  1. header('Content-Description: File Transfer');
  2. header('Content-Type: application/octet-stream');
  3. header("Content-Disposition: attachment; filename=$nazwaPliku");
  4. header('Content-Transfer-Encoding: binary');
  5. header('Expires: 0');
  6. header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
  7. header('Pragma: public');
  8. header('Content-Length: '.filesize($dir."/".$plik));
  9. flush();
  10. readfile($dir."/".$plik);


jak mam podać teraz $dir ?
acidm
Daj na początku
  1. $dir='../'.$dir;
umatik
Chciałem odświeżyć temat.

A w jaki sposób można by zabezpieczyć nieautoryzowanym dostępem, pliki na serwerze, na którym nie mam dostępu do innych katalogów niż public_html ?
phpion
Utwórz plik .htaccess o treści:
Kod
Deny From All

i wrzuć go do katalogu, który ma być zabezpieczony. Jeśli chciałbyś wyświetlić zawartość katalogu po podaniu hasła - szukaj pod frazami .htaccess + .htpasswd
umatik
Super, prosty trick, dzięki wielkie !
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.