Apache & Allowed memory size of...

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
Benutzeravatar
Dungeonwatcher
Mitglied
Beiträge: 635
Registriert: 11.07.2004 10:04
Wohnort: Berlin

Apache & Allowed memory size of...

Beitrag von Dungeonwatcher »

Hi! 8)

Ich habe das aktuelle phpBB2 und die aktuelle Version des DL Mod von oxpus am laufen. Beides funktionierte bis zur Umstellung auf ein anderes Betriebssystem (OS/2 --> XP) zur vollsten Zufriedenheit. Jetzt mit XAMPP 1.6.3a gibt es jedoch folgendes Problem. Beim DL von Dateien größer des in der PHP.INI angegebenen Wertes für memory_limit (aktuell bereits auf 64M erhöht) gibt es folgenden PHP Fehler:
Allowed memory size of 67108864 bytes exhausted (tried to allocate 1048577 bytes) in ...\dl_mod\classes\class_dlmod.php on line 1406
Desweiteren funktioniert seit dieser Umstellung auch das DL nach der Methode

Code: Alles auswählen

$size = @filesize($dl_file_url);
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/octet-stream");
header("Content-Length: ".$size);
header("Content-Transfer-Encoding: binary");
header("Content-Disposition: attachment; filename=\"".$dl_file['file_name']."\"");
readfile($dl_file_url);
nicht mehr.

Schuld daran muss wohl irgendein Parameter in der Apache und/oder PHP Konfiguration sein. Nur welcher? Ich sitze seit Tagen vor diversen Handbüchern und verstehe mittlerweile nur noch Bahnhof. :-?
speedtouch92
Mitglied
Beiträge: 104
Registriert: 11.12.2005 16:52
Kontaktdaten:

Beitrag von speedtouch92 »

Das problem liegt daran, dass wenn du mit readfile etwas öffnest,
der Code in den Cache gelesen wird.
Dieser darf nicht größer als 64 MB sein...


Mit
ini_set(memory_limit, 500);
kannst du den Cache für dieses Script auf 500 MB erweitern
Benutzeravatar
Dungeonwatcher
Mitglied
Beiträge: 635
Registriert: 11.07.2004 10:04
Wohnort: Berlin

Beitrag von Dungeonwatcher »

Hi! 8)

Hmmm, nun habe ich hier aber auch Dateien größer des vorhanden Arbeitsspeichers (2GB) im DL Angebot. Da dürfte diese Variante dann böse in díe Hose gehen.

Was mich so irritiert, ist die Tatsache das es unter OS/2 und einem anderen Webserver vollkommen problemlos funktionierte. Die PHP.INI ist bis auf einige Pfadangaben vollkommen identisch, nur der Webserver ist jetzt der Apache 2.2.4.

Liegt's nun an der Server Konfiguration oder doch am Mod?
speedtouch92
Mitglied
Beiträge: 104
Registriert: 11.12.2005 16:52
Kontaktdaten:

Beitrag von speedtouch92 »

Wie funktionierte das denn auf den anderen Servern?

Auch mit dem Mod??
Benutzeravatar
Dungeonwatcher
Mitglied
Beiträge: 635
Registriert: 11.07.2004 10:04
Wohnort: Berlin

Beitrag von Dungeonwatcher »

Korrekt. Das ganze Forum ist bis auf den Server (jetzt Apache) identisch.
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Versuch es mal mit [php:fpassthru] oder manuellem Streaming:

Code: Alles auswählen

if (($fp = fopen($datei, 'rb')) !== false)
{
    while (!feof($fp))
    {
        echo fread($fp, 100000);
        flush();
    }
    fclose($fp);
}
KB:knigge
Benutzeravatar
Dungeonwatcher
Mitglied
Beiträge: 635
Registriert: 11.07.2004 10:04
Wohnort: Berlin

Beitrag von Dungeonwatcher »

Hi! 8)

Sorry für die lange Reaktionszeit meinerseits. :oops:

Ich hab's probiert, allerdings ohne Erfolg. :x

So langsam verliere ich auch die Nerven und werde sauer weil ich nicht die geringste Idee habe, nichts dazu in einschlägigen Foren oder sonst wo im großen Netz finde. :cry:
Antworten

Zurück zu „Coding & Technik“