Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Maskowanie adresu
Forum PHP.pl > Forum > PHP
mikskape
Witam!
Mam plik:
Kod
http://strona1.pl/files/plik.rar

i chce żeby po wejściu na:
Kod
http://strona2.pl/index.php?down=plik.rar

lub
Kod
http://strona2.pl/plik.rar

pobrało mi plik.rar ale tak żeby user nie zobaczył jego prawdziwego adresu.
Jak to zrobić?
wookieb
Poczytaj o force download
mikskape
Użyłem skryptu ze strony http://elouai.com/force-download.php i działa. Dzięki za pomoc.
O to ten skrypt:
  1. <?php
  2.  
  3. $filename = $_GET['file'];
  4.  
  5. // required for IE, otherwise Content-disposition is ignored
  6. if(ini_get('zlib.output_compression'))
  7. ini_set('zlib.output_compression', 'Off');
  8.  
  9. // addition by Jorg Weske
  10. $file_extension = strtolower(substr(strrchr($filename,"."),1));
  11.  
  12. if( $filename == "" )
  13. {
  14. echo "<html><title>eLouai's Download Script</title><body>ERROR: download file NOT SPECIFIED. USE force-download.php?file=filepath</body></html>";
  15. } elseif ( ! file_exists( $filename ) )
  16. {
  17. echo "<html><title>eLouai's Download Script</title><body>ERROR: File not found. USE force-download.php?file=filepath</body></html>";
  18. };
  19. switch( $file_extension )
  20. {
  21. case "pdf": $ctype="application/pdf"; break;
  22. case "exe": $ctype="application/octet-stream"; break;
  23. case "zip": $ctype="application/zip"; break;
  24. case "doc": $ctype="application/msword"; break;
  25. case "xls": $ctype="application/vnd.ms-excel"; break;
  26. case "ppt": $ctype="application/vnd.ms-powerpoint"; break;
  27. case "gif": $ctype="image/gif"; break;
  28. case "png": $ctype="image/png"; break;
  29. case "jpeg":
  30. case "jpg": $ctype="image/jpg"; break;
  31. default: $ctype="application/force-download";
  32. }
  33. header("Pragma: public"); // required
  34. header("Expires: 0");
  35. header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
  36. header("Cache-Control: private",false); // required for certain browsers
  37. header("Content-Type: $ctype");
  38. // change, added quotes to allow spaces in filenames, by Rajkumar Singh
  39. header("Content-Disposition: attachment; filename=\"".basename($filename)."\";" );
  40. header("Content-Transfer-Encoding: binary");
  41. header("Content-Length: ".filesize($filename));
  42. readfile("$filename");
  43. exit();
  44.  
  45. ?>
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.