[solved] filedownload per php geht nicht
Posted: 2005-08-11 10:06
Guten Morgen!
Hab folgendes Problem: Musste vor ca 3 Wochen einen unserer internen FileServer von Fedora auf Gentoo umstellen. Auf dem FS läuft ein PHP-Script welches ein Download-Archiv zur Verfügung stellt. Die files die darüber geladen werden sollen, sind zwischen 0.5 und 400MB gro�?. Vor der Umstellung lief alles problemlos.
Seit der Umstellung funktionieren die Downloads nicht mehr. Jedes herunter geladene file ist exakt 2.000.000 Bytes gro�?. Au�?er es ist kleiner als der angegebene Wert, dann funktioniert dies ganz normal.
Langsam aber sicher bin ich am verzweifeln: es liegt definitiv an PHP, denn der normale Download aus einem Apache DirectoryListing funktioniert.
Hier mal das Script (es hat jedoch zuvor einwandfrei funktioniert und es funktioniert auch auf anderen Server ohne Probleme):
PHP habe ich mit folgendem Kommando kompiliert:
Und jetzt noch die (meiner Meinung nach) relevanten Settings, die den Download beeinflussen könnten:
Laufen tut das Ganze auf folgendem System:
Irgendjemand eine Idee wo ich noch suchen könnten? Danke im Voraus
mit freundlichen Grü�?en
Jürgen Jaritsch
Hab folgendes Problem: Musste vor ca 3 Wochen einen unserer internen FileServer von Fedora auf Gentoo umstellen. Auf dem FS läuft ein PHP-Script welches ein Download-Archiv zur Verfügung stellt. Die files die darüber geladen werden sollen, sind zwischen 0.5 und 400MB gro�?. Vor der Umstellung lief alles problemlos.
Seit der Umstellung funktionieren die Downloads nicht mehr. Jedes herunter geladene file ist exakt 2.000.000 Bytes gro�?. Au�?er es ist kleiner als der angegebene Wert, dann funktioniert dies ganz normal.
Langsam aber sicher bin ich am verzweifeln: es liegt definitiv an PHP, denn der normale Download aus einem Apache DirectoryListing funktioniert.
Hier mal das Script (es hat jedoch zuvor einwandfrei funktioniert und es funktioniert auch auf anderen Server ohne Probleme):
Code: Select all
<?php
$filename = 'xyz.exe';
$realname = basename($plan);
header("Content-Type: application/octet-stream");
header("Content-Disposition: attachment; filename="$realname"");
header("Content-type: application/force_download");
header("Content-Transfer-Encoding: binary");
header("Content-length: " . filesize($filename) );
readfile($filename);
exit;
?>Code: Select all
'./configure'
'--prefix=/opt/php_5.0.4/'
'--with-apxs=/opt/apache_1.3.33/bin/apxs'
'--disable-cgi'
'--with-libxml-dir=/opt/libxml2_2.6.19/'
'--with-openssl=/opt/openssl_0.9.8/'
'--with-zlib=/opt/zlib_1.2.2/'
'--enable-bcmath'
'--enable-calendar'
'--with-curl=/opt/curl_7.14.0'
'--with-curlwrappers'
'--enable-ftp'
'--enable-mbstring'
'--with-mysql=/opt/mysql-max_4.1.12/'
'--with-mysqli=/opt/mysql-max_4.1.12/bin/mysql_config'
'--enable-memory-limit'
'--without-pear'Code: Select all
max_execution_time = 5000
max_input_time = 5000
memory_limit = 256M
register_globals = Off
safe_mode = OffCode: Select all
Linux version 2.6.11-hardened-r14 (root@livecd) (gcc version 3.3.5-20050130 (Gentoo 3.3.5.20050130-r1, ssp-3.3.5.20050130-1, pie-8.7.7.1)) #3 SMP Mon Jul 4 16:55:26 GMT 2005mit freundlichen Grü�?en
Jürgen Jaritsch