Portál AbcLinuxu, 31. října 2025 22:03
 27.2.2024 12:40
Max             | skóre: 72
             | blog: Max_Devaine
        27.2.2024 12:40
Max             | skóre: 72
             | blog: Max_Devaine
            
        EnableSendfile podle mě neřeší tvůj problém. Pokud je zapnuté, bude Apache předávat soubory pomocí syscallu sendfile místo read/write. V dotazu píšeš, že potřebuješ obejít PHP limity, tedy ten požadavek zpracovává PHP a ne přímo apache a EnableSendfile neudělá nic.
Modul xsendfile umožní PHP předat hlavičku do Apache, ten pak pošle data přímo a obejde PHP. To EnableSendfileneumí. Ale ověř si to, Apache už delší dobu nepoužívám.
@ob_end_flush();
flush();
$fileDescriptor = fopen($file, 'rb');
while ($chunk = fread($fileDescriptor, 8192)) {
    echo $chunk;
    @ob_end_flush();
    flush();
}
fclose($fileDescriptor);
exit;
pripadne,
$context = stream_context_create();
$file = fopen($url, 'rb', FALSE, $context);
while(!feof($file))
{
    echo stream_get_contents($file, 4096);
}
            XSendFile on. V loghu Apache žádná chyba není, prostě normální download, jen ten stažený soubor prázdný a má nulovou velikost.
            podle me ta konfigurace je slozitejsiNení. Maximálně v případě, že požadované soubory jsou někde mimo ten web
        Tiskni
            
                Sdílej:
                 
                 
                 
                 
                 
                 
            
    
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.