<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" > <channel><title>Kommentare zu: Dateidownload via PHP mit Speedlimit und Resume</title> <atom:link href="http://www.phpgangsta.de/dateidownload-via-php-mit-speedlimit-und-resume/feed" rel="self" type="application/rss+xml" /><link>http://www.phpgangsta.de/dateidownload-via-php-mit-speedlimit-und-resume</link> <description>Ein PHP Blog mit Themen aller Art. Manchmal vergewaltige ich PHP...</description> <lastBuildDate>Wed, 08 Feb 2012 08:45:50 +0100</lastBuildDate> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.3.1</generator> <item><title>Von: Ronny</title><link>http://www.phpgangsta.de/dateidownload-via-php-mit-speedlimit-und-resume/comment-page-1#comment-5473</link> <dc:creator>Ronny</dc:creator> <pubDate>Tue, 01 Feb 2011 08:03:31 +0000</pubDate> <guid isPermaLink="false">http://www.phpgangsta.de/?p=873#comment-5473</guid> <description>Hi,hab das Script ein wenig verändert um andere Mimetypes zu unterstützen und habe momentan das Problem, das .mp4 Videos in Chrome 8.0.552.237 nicht funktionieren, in Chrome 10 (Canary Build) jedoch dann wieder laufen. Ist das ein Bug in Chrome, jemand ne Ahnung. Ansonsten läuft das Script ganz wunderbar, danke dafür! Noch eine andere Frage, in wieweit geht es auf die Performance, gibts da Erfahrungen?Grüße</description> <content:encoded><![CDATA[<p>Hi,</p><p>hab das Script ein wenig verändert um andere Mimetypes zu unterstützen und habe momentan das Problem, das .mp4 Videos in Chrome 8.0.552.237 nicht funktionieren, in Chrome 10 (Canary Build) jedoch dann wieder laufen. Ist das ein Bug in Chrome, jemand ne Ahnung. Ansonsten läuft das Script ganz wunderbar, danke dafür! Noch eine andere Frage, in wieweit geht es auf die Performance, gibts da Erfahrungen?</p><p>Grüße</p> ]]></content:encoded> </item> <item><title>Von: Linkliste 7 at Random People</title><link>http://www.phpgangsta.de/dateidownload-via-php-mit-speedlimit-und-resume/comment-page-1#comment-5073</link> <dc:creator>Linkliste 7 at Random People</dc:creator> <pubDate>Sun, 16 Jan 2011 05:07:01 +0000</pubDate> <guid isPermaLink="false">http://www.phpgangsta.de/?p=873#comment-5073</guid> <description>[...] High School &#8211; Engadget German Windows-Netzwerkeinstellungen einfach umschalten &#124; heise Netze Dateidownload via PHP mit Speedlimit und Resume &#124; PHP Gangsta &#8211; Der PHP Blog Schutz vor nervigen Spamanrufen Windows XP Pro: Mehr Zugriffe f?r Remote-PCs &#8211; PC-WELT [...]</description> <content:encoded><![CDATA[<p>[...] High School &#8211; Engadget German Windows-Netzwerkeinstellungen einfach umschalten | heise Netze Dateidownload via PHP mit Speedlimit und Resume | PHP Gangsta &#8211; Der PHP Blog Schutz vor nervigen Spamanrufen Windows XP Pro: Mehr Zugriffe f?r Remote-PCs &#8211; PC-WELT [...]</p> ]]></content:encoded> </item> <item><title>Von: Robert</title><link>http://www.phpgangsta.de/dateidownload-via-php-mit-speedlimit-und-resume/comment-page-1#comment-3895</link> <dc:creator>Robert</dc:creator> <pubDate>Wed, 10 Nov 2010 09:52:36 +0000</pubDate> <guid isPermaLink="false">http://www.phpgangsta.de/?p=873#comment-3895</guid> <description>Hi, ich hatte jüngst mit deinem Code ein Problem: HTTPS-Dateidownload mit IE6/7/8. Und zwar fehlte der folgende Header: [php]header(&#039;Pragma: public&#039;);[/php]Sobald dieser gesetzt ist, können auch IEs die Datei per HTTPS herunterladen.Diese Bugs sind Microsoft bekannt: http://support.microsoft.com/kb/812935/en-us http://support.microsoft.com/kb/323308/en-usVG Robert</description> <content:encoded><![CDATA[<p>Hi, ich hatte jüngst mit deinem Code ein Problem: HTTPS-Dateidownload mit IE6/7/8. Und zwar fehlte der folgende Header:</p><pre class="brush: php; title: ; notranslate">header('Pragma: public');</pre><p>Sobald dieser gesetzt ist, können auch IEs die Datei per HTTPS herunterladen.</p><p>Diese Bugs sind Microsoft bekannt:<br /> <a href="http://support.microsoft.com/kb/812935/en-us" rel="nofollow">http://support.microsoft.com/kb/812935/en-us</a><br /> <a href="http://support.microsoft.com/kb/323308/en-us" rel="nofollow">http://support.microsoft.com/kb/323308/en-us</a></p><p>VG<br /> Robert</p> ]]></content:encoded> </item> <item><title>Von: deluxe.cd</title><link>http://www.phpgangsta.de/dateidownload-via-php-mit-speedlimit-und-resume/comment-page-1#comment-3375</link> <dc:creator>deluxe.cd</dc:creator> <pubDate>Wed, 22 Sep 2010 10:11:38 +0000</pubDate> <guid isPermaLink="false">http://www.phpgangsta.de/?p=873#comment-3375</guid> <description>Nice Script - Thanks for sharing! Allerdings solltest du noch eine kleine if ($wait &lt; 1000000) vor dem usleep ergänzen, für den Fall, dass der flush länger als 1 Sekunde benötigt...</description> <content:encoded><![CDATA[<p>Nice Script &#8211; Thanks for sharing! Allerdings solltest du noch eine kleine if ($wait &lt; 1000000) vor dem usleep ergänzen, für den Fall, dass der flush länger als 1 Sekunde benötigt&#8230;</p> ]]></content:encoded> </item> <item><title>Von: Serverumzug fast fertig &#124; davidsCorner.de</title><link>http://www.phpgangsta.de/dateidownload-via-php-mit-speedlimit-und-resume/comment-page-1#comment-2904</link> <dc:creator>Serverumzug fast fertig &#124; davidsCorner.de</dc:creator> <pubDate>Mon, 02 Aug 2010 14:48:05 +0000</pubDate> <guid isPermaLink="false">http://www.phpgangsta.de/?p=873#comment-2904</guid> <description>[...] einen wäre da der Artikel &#8220;Dateidownload via PHP mit Speedlimit und Resume&#8221; auf phpgangsta.de oder die GIT 101 Präsentation von Scott Chacon. Außerdem war ich auf der Suche [...]</description> <content:encoded><![CDATA[<p>[...] einen wäre da der Artikel &#8220;Dateidownload via PHP mit Speedlimit und Resume&#8221; auf phpgangsta.de oder die GIT 101 Präsentation von Scott Chacon. Außerdem war ich auf der Suche [...]</p> ]]></content:encoded> </item> <item><title>Von: Linkhub &#8211; Woche 09-2010 &#171; pehbehbeh</title><link>http://www.phpgangsta.de/dateidownload-via-php-mit-speedlimit-und-resume/comment-page-1#comment-1145</link> <dc:creator>Linkhub &#8211; Woche 09-2010 &#171; pehbehbeh</dc:creator> <pubDate>Sun, 07 Mar 2010 16:48:12 +0000</pubDate> <guid isPermaLink="false">http://www.phpgangsta.de/?p=873#comment-1145</guid> <description>[...] Dateidownload via PHP mit Speedlimit und Resume [...]</description> <content:encoded><![CDATA[<p>[...] Dateidownload via PHP mit Speedlimit und Resume [...]</p> ]]></content:encoded> </item> <item><title>Von: Malte</title><link>http://www.phpgangsta.de/dateidownload-via-php-mit-speedlimit-und-resume/comment-page-1#comment-1132</link> <dc:creator>Malte</dc:creator> <pubDate>Fri, 05 Mar 2010 22:12:31 +0000</pubDate> <guid isPermaLink="false">http://www.phpgangsta.de/?p=873#comment-1132</guid> <description>nice! &lt;code&gt;list($seekStart, $seekEnd) = array_map(&#039;intval&#039;, explode(&#039;-&#039;, substr($_SERVER[&#039;HTTP_RANGE&#039;], 6), 2));&lt;/code&gt;</description> <content:encoded><![CDATA[<p>nice!<br /> <code>list($seekStart, $seekEnd) = array_map('intval', explode('-', substr($_SERVER['HTTP_RANGE'], 6), 2));</code></p> ]]></content:encoded> </item> <item><title>Von: Sascha Presnac</title><link>http://www.phpgangsta.de/dateidownload-via-php-mit-speedlimit-und-resume/comment-page-1#comment-1126</link> <dc:creator>Sascha Presnac</dc:creator> <pubDate>Fri, 05 Mar 2010 11:52:38 +0000</pubDate> <guid isPermaLink="false">http://www.phpgangsta.de/?p=873#comment-1126</guid> <description>@Ralph: Okay, hätten wir den begriff definiert und mit dieser Definition gehe ich mit dir konform. Manche verwechseln allerdings Hype und SOTA und von daher bin ich eher vorsichtig, wenn es um diese Begriffe geht. Man hat halt immer den alten Konflikt, die Entscheidung zwischen &quot;Never touch a running system&quot; (was läuft, ist gut) und dem &quot;look over your horizon&quot;-prinzip (neues lernen, besser werden) und muss auch jedesmal schauen, was sich für die Situation besser eignet.</description> <content:encoded><![CDATA[<p>@Ralph: Okay, hätten wir den begriff definiert und mit dieser Definition gehe ich mit dir konform. Manche verwechseln allerdings Hype und SOTA und von daher bin ich eher vorsichtig, wenn es um diese Begriffe geht.<br /> Man hat halt immer den alten Konflikt, die Entscheidung zwischen &#8220;Never touch a running system&#8221; (was läuft, ist gut) und dem &#8220;look over your horizon&#8221;-prinzip (neues lernen, besser werden) und muss auch jedesmal schauen, was sich für die Situation besser eignet.</p> ]]></content:encoded> </item> <item><title>Von: Ralph Meier</title><link>http://www.phpgangsta.de/dateidownload-via-php-mit-speedlimit-und-resume/comment-page-1#comment-1122</link> <dc:creator>Ralph Meier</dc:creator> <pubDate>Fri, 05 Mar 2010 10:56:09 +0000</pubDate> <guid isPermaLink="false">http://www.phpgangsta.de/?p=873#comment-1122</guid> <description>@Sascha: Grundsätzlich stimme ich mit Dir überein, dass man nicht immer jedem Hype nachrennen sollte. Trotzdem muss man neue Wege gehen, wenn man sich weiterentwickeln will. Das heisst man muss auch neue Dinge ausprobieren. State of the art sind für mich Dinge, die sich schon eine Weile bewähren (also nicht zu verwechseln mit einem Hype).</description> <content:encoded><![CDATA[<p>@Sascha: Grundsätzlich stimme ich mit Dir überein, dass man nicht immer jedem Hype nachrennen sollte. Trotzdem muss man neue Wege gehen, wenn man sich weiterentwickeln will. Das heisst man muss auch neue Dinge ausprobieren. State of the art sind für mich Dinge, die sich schon eine Weile bewähren (also nicht zu verwechseln mit einem Hype).</p> ]]></content:encoded> </item> <item><title>Von: Sascha Presnac</title><link>http://www.phpgangsta.de/dateidownload-via-php-mit-speedlimit-und-resume/comment-page-1#comment-1121</link> <dc:creator>Sascha Presnac</dc:creator> <pubDate>Fri, 05 Mar 2010 10:50:15 +0000</pubDate> <guid isPermaLink="false">http://www.phpgangsta.de/?p=873#comment-1121</guid> <description>@Ralph: IMHO sollte man das ganze SOTA Gerede nicht überbewerten. Die beste Variante ist die, mit der ihr a) euch gut auskennt und die b) am besten zur Aufgabe passt.</description> <content:encoded><![CDATA[<p>@Ralph: IMHO sollte man das ganze SOTA Gerede nicht überbewerten. Die beste Variante ist die, mit der ihr a) euch gut auskennt und die b) am besten zur Aufgabe passt.</p> ]]></content:encoded> </item> <item><title>Von: Ralph Meier</title><link>http://www.phpgangsta.de/dateidownload-via-php-mit-speedlimit-und-resume/comment-page-1#comment-1119</link> <dc:creator>Ralph Meier</dc:creator> <pubDate>Fri, 05 Mar 2010 10:10:38 +0000</pubDate> <guid isPermaLink="false">http://www.phpgangsta.de/?p=873#comment-1119</guid> <description>Es ist ja so... eine Weile lang hat &quot;man&quot; ja gehört, dass es cool ist Bilder in der DB als Blob zu speichern. So hat es dann auch unser Chef uns nahegelegt.Ahnungslos gingen wir an die Geschichte heran und hatten seither nur Probleme damit.2 Hauptprobleme, welche sich für mich herausgestellt haben: - Bei einer 8MB Datei (z.B. PDF) braucht der MySQL Server ca. 100MB RAM - Wir hatten permanent Probleme mit der Ausgabe als Blob-Stream (ja, wieder einmal der IE6 + IE7). Es mussten verschiedene Varianten ausprogrammiert werden -&gt; HTTP HeaderAm Anfang war ich auch noch der Meinung, dass es eine gute Idee ist, Files in der DB zu speichern (Es sind ja auch Daten). Das Backup ist bereits erledigt und es ist alles schön an einem Ort. Inzwischen würde ich aber wieder die File Variante bevorzugen.Es wäre aber noch interessant, wenn jemand sagen könnte, was aktuell State of the art ist und warum?</description> <content:encoded><![CDATA[<p>Es ist ja so&#8230; eine Weile lang hat &#8220;man&#8221; ja gehört, dass es cool ist Bilder in der DB als Blob zu speichern. So hat es dann auch unser Chef uns nahegelegt.</p><p>Ahnungslos gingen wir an die Geschichte heran und hatten seither nur Probleme damit.</p><p>2 Hauptprobleme, welche sich für mich herausgestellt haben:<br /> - Bei einer 8MB Datei (z.B. PDF) braucht der MySQL Server ca. 100MB RAM<br /> - Wir hatten permanent Probleme mit der Ausgabe als Blob-Stream (ja, wieder einmal der IE6 + IE7). Es mussten verschiedene Varianten ausprogrammiert werden -&gt; HTTP Header</p><p>Am Anfang war ich auch noch der Meinung, dass es eine gute Idee ist, Files in der DB zu speichern (Es sind ja auch Daten). Das Backup ist bereits erledigt und es ist alles schön an einem Ort.<br /> Inzwischen würde ich aber wieder die File Variante bevorzugen.</p><p>Es wäre aber noch interessant, wenn jemand sagen könnte, was aktuell State of the art ist und warum?</p> ]]></content:encoded> </item> <item><title>Von: Michael Kliewe</title><link>http://www.phpgangsta.de/dateidownload-via-php-mit-speedlimit-und-resume/comment-page-1#comment-1118</link> <dc:creator>Michael Kliewe</dc:creator> <pubDate>Fri, 05 Mar 2010 09:59:30 +0000</pubDate> <guid isPermaLink="false">http://www.phpgangsta.de/?p=873#comment-1118</guid> <description>Ist natürlich auch abhängig von den Rahmenbedingungen, aber eine Datenbank sollte wenn möglich klein gehalten werden damit sie in den RAM des Servers passt. Wenn ich nun viele Gigabytes an Daten in die Datenbank lege (als BLOBs natürlich) wird die Datenbank zwangsweise langsamer. Man stelle sich vor, Flickr legt alle Bilder in einer Petabyte-großen Datenbank ab. Oha! Backups und Replikation dauern dann auch dementsprechend länger. Man müßte, je nach Einsatzzweck, nicht nur den Dateiinhalt selbst speichern, sondern auch den Dateinamen + Erstellungszeit + Last-Modified-Zeitpunkt. Alles Dinge, die das Dateisystem von Haus aus beherrscht. Falls man inkrementelle Backups der Dateien machen möchte (tägliches Backup, nur die geänderten Dateien werden auf Band gespeichert oder so) ist das mit Dateien in der Datenbank komplizierter als einfach z.B. ein rsync des Dateisystems. Des weiteren belastet man den häufig eh bereits ausgelasteten Datenbankserver unnötig. Wie wir wissen ist ja die Datenbank oft das Nadelöhr eines größeren Projekts. Wenn man Dateien auf der Festplatte speichert, kann man diese sehr einfach via Lighty/Nginx etc. an den Browser ausliefern, man muss weder den Apache noch die Datenbank damit belasten. Habe mal den Faktor 10 gelesen bei der Auslieferung von Dateien aus einer Datenbank. Außerdem muss man im Fall einer Datenbank Dinge wie Resume, partieller Download oder &quot;If-Modified-Since&quot;-Header selbst nachbauen. Soweit ich weiß kann man aus BLOBs nicht nur Teile auslesen (also beispielsweise die ersten 100KB oder so), man muss immer das ganze Feld abfragen. Damit wird Resume bzw. partieller Download quasi unmöglich. BLOBs in einer Datenbank sind größenbeschränkt (4GB in MySQL, 2GB in Postgresql). Wird man zwar selten erreichen, aber ist eine Grenze die ein modernes Dateisystem nicht hat. Falls man sein Projekt bei einem Hoster liegen hat gibt es mitunter auch Größenbeschränkungen der Datenbank auf 100MB oder so.Ich überlege gerade auch was passiert mit PHP, wenn ich eine 500MB &quot;Datei&quot; aus der Datenbank lade und an den Browser ausliefere. Frisst mein PHP-Prozess dann eventuell 500MB RAM, weil ich die Daten ja in einer Variablen halten muss?Arg, ist doch nicht so &quot;kurz&quot; geworden wie du wolltest. Das sind so die Dinge die mir auf Anhieb durch den Kopf schiessen, mag noch viele andere Vor- und Nachteile geben, wäre natürlich gut wenn du/ihr noch welche nennt.</description> <content:encoded><![CDATA[<p>Ist natürlich auch abhängig von den Rahmenbedingungen, aber eine Datenbank sollte wenn möglich klein gehalten werden damit sie in den RAM des Servers passt. Wenn ich nun viele Gigabytes an Daten in die Datenbank lege (als BLOBs natürlich) wird die Datenbank zwangsweise langsamer. Man stelle sich vor, Flickr legt alle Bilder in einer Petabyte-großen Datenbank ab. Oha!<br /> Backups und Replikation dauern dann auch dementsprechend länger. Man müßte, je nach Einsatzzweck, nicht nur den Dateiinhalt selbst speichern, sondern auch den Dateinamen + Erstellungszeit + Last-Modified-Zeitpunkt. Alles Dinge, die das Dateisystem von Haus aus beherrscht.<br /> Falls man inkrementelle Backups der Dateien machen möchte (tägliches Backup, nur die geänderten Dateien werden auf Band gespeichert oder so) ist das mit Dateien in der Datenbank komplizierter als einfach z.B. ein rsync des Dateisystems.<br /> Des weiteren belastet man den häufig eh bereits ausgelasteten Datenbankserver unnötig. Wie wir wissen ist ja die Datenbank oft das Nadelöhr eines größeren Projekts. Wenn man Dateien auf der Festplatte speichert, kann man diese sehr einfach via Lighty/Nginx etc. an den Browser ausliefern, man muss weder den Apache noch die Datenbank damit belasten. Habe mal den Faktor 10 gelesen bei der Auslieferung von Dateien aus einer Datenbank.<br /> Außerdem muss man im Fall einer Datenbank Dinge wie Resume, partieller Download oder &#8220;If-Modified-Since&#8221;-Header selbst nachbauen.<br /> Soweit ich weiß kann man aus BLOBs nicht nur Teile auslesen (also beispielsweise die ersten 100KB oder so), man muss immer das ganze Feld abfragen. Damit wird Resume bzw. partieller Download quasi unmöglich.<br /> BLOBs in einer Datenbank sind größenbeschränkt (4GB in MySQL, 2GB in Postgresql). Wird man zwar selten erreichen, aber ist eine Grenze die ein modernes Dateisystem nicht hat.<br /> Falls man sein Projekt bei einem Hoster liegen hat gibt es mitunter auch Größenbeschränkungen der Datenbank auf 100MB oder so.</p><p>Ich überlege gerade auch was passiert mit PHP, wenn ich eine 500MB &#8220;Datei&#8221; aus der Datenbank lade und an den Browser ausliefere. Frisst mein PHP-Prozess dann eventuell 500MB RAM, weil ich die Daten ja in einer Variablen halten muss?</p><p>Arg, ist doch nicht so &#8220;kurz&#8221; geworden wie du wolltest. Das sind so die Dinge die mir auf Anhieb durch den Kopf schiessen, mag noch viele andere Vor- und Nachteile geben, wäre natürlich gut wenn du/ihr noch welche nennt.</p> ]]></content:encoded> </item> <item><title>Von: Ralph Meier</title><link>http://www.phpgangsta.de/dateidownload-via-php-mit-speedlimit-und-resume/comment-page-1#comment-1117</link> <dc:creator>Ralph Meier</dc:creator> <pubDate>Fri, 05 Mar 2010 09:18:21 +0000</pubDate> <guid isPermaLink="false">http://www.phpgangsta.de/?p=873#comment-1117</guid> <description>Kannst Du kurz erklären, warum du upload von Files in DB&#039;s als böse erachtest? Wir hatten schon einige Diskussionen warum ja und warum nein.</description> <content:encoded><![CDATA[<p>Kannst Du kurz erklären, warum du upload von Files in DB&#8217;s als böse erachtest? Wir hatten schon einige Diskussionen warum ja und warum nein.</p> ]]></content:encoded> </item> <item><title>Von: Sascha Presnac</title><link>http://www.phpgangsta.de/dateidownload-via-php-mit-speedlimit-und-resume/comment-page-1#comment-1106</link> <dc:creator>Sascha Presnac</dc:creator> <pubDate>Thu, 04 Mar 2010 14:06:06 +0000</pubDate> <guid isPermaLink="false">http://www.phpgangsta.de/?p=873#comment-1106</guid> <description>@Michael Kliewe: Das Firefox-AddOn heißt DownThemAll und ist hier zu finden: https://addons.mozilla.org/de/firefox/addon/201</description> <content:encoded><![CDATA[<p>@Michael Kliewe: Das Firefox-AddOn heißt DownThemAll und ist hier zu finden: <a href="https://addons.mozilla.org/de/firefox/addon/201" rel="nofollow">https://addons.mozilla.org/de/firefox/addon/201</a></p> ]]></content:encoded> </item> <item><title>Von: Michael Kliewe</title><link>http://www.phpgangsta.de/dateidownload-via-php-mit-speedlimit-und-resume/comment-page-1#comment-1104</link> <dc:creator>Michael Kliewe</dc:creator> <pubDate>Thu, 04 Mar 2010 12:11:49 +0000</pubDate> <guid isPermaLink="false">http://www.phpgangsta.de/?p=873#comment-1104</guid> <description>Für Abwärtskompatibilität gebe ich dir recht, da könnte man auch mime_content_type nehmen. ABER: Wenn man hier guckt http://php.net/manual/en/function.mime-content-type.php liest man dass die Funktion bereits Deprecated ist und nicht mehr genutzt werden soll, deshalb hab ich FileInfo genutzt. Aber für alte Systeme wo man kein FileInfo installieren kann ist es eine gute Lösung. Eine andere mögliche Lösung sind Funktionen, die anhand der Dateiendung einen Mimetype bestimmen. Ist aber auch nur eine Zwischenlösung, da Endungen umbenannt werden können, die ersten Bytes einer Datei aber zuverlässig den Mimetype verraten.An die Tools kann ich mich nicht genau erinnern, gibt ja so viele davon, die bekanntesten sind wohl http://www.freedownloadmanager.org/ http://www.flashget.com/index_en.htm Ich hatte aber glaub ich auch schonmal ein Firefox-Addon was Resume und paralleles Downloaden einer Datei konnte.</description> <content:encoded><![CDATA[<p>Für Abwärtskompatibilität gebe ich dir recht, da könnte man auch mime_content_type nehmen. ABER: Wenn man hier guckt<br /> <a href="http://php.net/manual/en/function.mime-content-type.php" rel="nofollow">http://php.net/manual/en/function.mime-content-type.php</a><br /> liest man dass die Funktion bereits Deprecated ist und nicht mehr genutzt werden soll, deshalb hab ich FileInfo genutzt. Aber für alte Systeme wo man kein FileInfo installieren kann ist es eine gute Lösung.<br /> Eine andere mögliche Lösung sind Funktionen, die anhand der Dateiendung einen Mimetype bestimmen. Ist aber auch nur eine Zwischenlösung, da Endungen umbenannt werden können, die ersten Bytes einer Datei aber zuverlässig den Mimetype verraten.</p><p>An die Tools kann ich mich nicht genau erinnern, gibt ja so viele davon, die bekanntesten sind wohl<br /> <a href="http://www.freedownloadmanager.org/" rel="nofollow">http://www.freedownloadmanager.org/</a><br /> <a href="http://www.flashget.com/index_en.htm" rel="nofollow">http://www.flashget.com/index_en.htm</a><br /> Ich hatte aber glaub ich auch schonmal ein Firefox-Addon was Resume und paralleles Downloaden einer Datei konnte.</p> ]]></content:encoded> </item> <item><title>Von: Kevin</title><link>http://www.phpgangsta.de/dateidownload-via-php-mit-speedlimit-und-resume/comment-page-1#comment-1103</link> <dc:creator>Kevin</dc:creator> <pubDate>Thu, 04 Mar 2010 11:53:01 +0000</pubDate> <guid isPermaLink="false">http://www.phpgangsta.de/?p=873#comment-1103</guid> <description>Wenn ich das recht sehe, nutzt Du fileinfo hier nur für den Mimetype? Das geht, zwecks Abwärtskompatibilität, auch ohne: echo mime_content_type($filename);Das flush() ist innerhalb der Schleife zwar logisch korrekt, kann aber bei ungünstigen Parametern krassen Overhead erzeugen. Wenn man zig parallele Downloads künstlich lange in der Queue hält, sollte man sich auch seine Webserver Konfiguration nochmal gut anschauen, nicht das irgendwann die Connections auslaufen... aber die Diskussion hat ja nicht direkt mit Deinem Script zu tun ;)Wirklich eine sehr, sehr schöne Lösung! Danke das Du das mit uns teilst, ich hab auch schon gleich eine Idee wo ich das verwenden kann.Könntest Du vielleicht kurz schreiben, mit welchen Tools Du das Resume bzw. die parallelen Downloads getestet hast? Bin neugierig ob die Tools sich da alle gleich verhalten.</description> <content:encoded><![CDATA[<p>Wenn ich das recht sehe, nutzt Du fileinfo hier nur für den Mimetype?<br /> Das geht, zwecks Abwärtskompatibilität, auch ohne:<br /> echo mime_content_type($filename);</p><p>Das flush() ist innerhalb der Schleife zwar logisch korrekt, kann aber bei ungünstigen Parametern krassen Overhead erzeugen.<br /> Wenn man zig parallele Downloads künstlich lange in der Queue hält, sollte man sich auch seine Webserver Konfiguration nochmal gut anschauen, nicht das irgendwann die Connections auslaufen&#8230; aber die Diskussion hat ja nicht direkt mit Deinem Script zu tun <img src='http://www.phpgangsta.de/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /></p><p>Wirklich eine sehr, sehr schöne Lösung! Danke das Du das mit uns teilst, ich hab auch schon gleich eine Idee wo ich das verwenden kann.</p><p>Könntest Du vielleicht kurz schreiben, mit welchen Tools Du das Resume bzw. die parallelen Downloads getestet hast? Bin neugierig ob die Tools sich da alle gleich verhalten.</p> ]]></content:encoded> </item> <item><title>Von: chrisse</title><link>http://www.phpgangsta.de/dateidownload-via-php-mit-speedlimit-und-resume/comment-page-1#comment-1101</link> <dc:creator>chrisse</dc:creator> <pubDate>Thu, 04 Mar 2010 10:36:50 +0000</pubDate> <guid isPermaLink="false">http://www.phpgangsta.de/?p=873#comment-1101</guid> <description>tolles skript, wie man den D/L speed throttlen kann hat mich schon immer interessiert.</description> <content:encoded><![CDATA[<p>tolles skript, wie man den D/L speed throttlen kann hat mich schon immer interessiert.</p> ]]></content:encoded> </item> <item><title>Von: Speedlimit und Resume bei Downloads mit PHP - Standard, Zukunft, Snippet-Kiste, FileInfo, Extension, Artikel, Gangsta, Guter - homepagebewertung.de</title><link>http://www.phpgangsta.de/dateidownload-via-php-mit-speedlimit-und-resume/comment-page-1#comment-1100</link> <dc:creator>Speedlimit und Resume bei Downloads mit PHP - Standard, Zukunft, Snippet-Kiste, FileInfo, Extension, Artikel, Gangsta, Guter - homepagebewertung.de</dc:creator> <pubDate>Thu, 04 Mar 2010 09:22:04 +0000</pubDate> <guid isPermaLink="false">http://www.phpgangsta.de/?p=873#comment-1100</guid> <description>[...] Artikel von PHP Gangsta, setzt zwar die Extension FileInfo voraus, diese ist aber seit PHP 5.3 Standard, für die Zukunft [...]</description> <content:encoded><![CDATA[<p>[...] Artikel von PHP Gangsta, setzt zwar die Extension FileInfo voraus, diese ist aber seit PHP 5.3 Standard, für die Zukunft [...]</p> ]]></content:encoded> </item> <item><title>Von: Sascha Presnac</title><link>http://www.phpgangsta.de/dateidownload-via-php-mit-speedlimit-und-resume/comment-page-1#comment-1099</link> <dc:creator>Sascha Presnac</dc:creator> <pubDate>Thu, 04 Mar 2010 09:14:50 +0000</pubDate> <guid isPermaLink="false">http://www.phpgangsta.de/?p=873#comment-1099</guid> <description>Das ist eine super Sache. Nicht, dass ich dannach gesucht hätte, aber nun kenne ich zumindest sowas und evtl. braucht man es ja mal. Danke für dieses tolle Beispiel!</description> <content:encoded><![CDATA[<p>Das ist eine super Sache. Nicht, dass ich dannach gesucht hätte, aber nun kenne ich zumindest sowas und evtl. braucht man es ja mal.<br /> Danke für dieses tolle Beispiel!</p> ]]></content:encoded> </item> </channel> </rss>
<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic
Page Caching using disk: basic
Database Caching using disk: basic
Object Caching 666/691 objects using disk: basic

Served from: www.phpgangsta.de @ 2012-02-08 14:46:44 -->
