WinFuture-Forum.de: Dateipfad Verschleierung Funktioniert Nicht: - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

Dateipfad Verschleierung Funktioniert Nicht:


#1 Mitglied ist offline   Janson 

  • Gruppe: aktive Mitglieder
  • Beiträge: 118
  • Beigetreten: 21. September 08
  • Reputation: 0

  geschrieben 14. Februar 2009 - 20:38

Ich habe bei Google.de eine Möglichkeit gefunden Dateipfade zu verschleiern, das script sieht so aus:

<?php
	$dir = "download/".$_GET['kat'].$GET['typ'];
	$file = $_GET['file'];

	@set_time_limit(600);

	$completeFilePath = $dir.$file;

	$pi = pathinfo($completeFilePath);

	if ($pi['extension'] == "pdf") {
		$ct = "application/pdf";
	}
	else {
		$ct = "application/octet-stream";
	}

	header("Cache-control: private");
	header("Content-Type: $ct");
	header("Content-Type: application/octet-stream");
	header("Content-Disposition: attachment; filename=$file");

	$fd=fopen($completeFilePath, 'rb');
	fpassthru($fd);
	fclose($fd);
	exit();
?>


Also z.B. index.php?kat=meinekategoriep&typ=meintyp&file=download.exe

Aber die Datei die zum Download angeboten wird ist 6 GB groß und die Datein die das Script mir ausspuckt nur 500kb

Es wäre zwar super datein so komprimieren zu können, aber das geht leider nicht

:D

Aber wo liegt das Problem?
0

Anzeige



#2 Mitglied ist offline   amalbhalbe 

  • Gruppe: aktive Mitglieder
  • Beiträge: 643
  • Beigetreten: 14. Mai 04
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:BMW E38 740i V8 286 PS 4.4L Hubraum
  • Interessen:Design is the production of braindysentery

geschrieben 25. Februar 2009 - 16:17

Versuch mal Content-length & content-transfer-encoding mit an zu geben

Das hab Ich dazu im Manual gefunden


 For large files (100+ MBs), I found that it is essential to flush the file content ASAP, otherwise the download dialog doesn't show until a long time or never. 
 
 <?php
 header("Content-Disposition: attachment; filename=" . urlencode($file));	
 header("Content-Type: application/force-download");
 header("Content-Type: application/octet-stream");
 header("Content-Type: application/download");
 header("Content-Description: File Transfer");			 
 header("Content-Length: " . filesize($file));
 flush(); // this doesn't really matter.
 
 $fp = fopen($file, "r"); 
 while (!feof($fp))
 {
	 echo fread($fp, 65536); 
	 flush(); // this is essential for large downloads
 }  
 fclose($fp); 
 ?>

Dieser Beitrag wurde von amalbhalbe bearbeitet: 25. Februar 2009 - 16:20

Pc is my life, amd my world, intel my enemy and Linux my Hell
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0