PDF Download erzwingen

2013-12-09 00:00:00 IN1 , 2023-04-10 14:16:28 IN1


Durch das richtige Setzen von Headern kann man das unmittelbare Darstellen von PDF im Browser verhindern und stattdessen das Anzeigen der Download Dialog-Box erzwingen.

Firefox hat seit der Version 19 einen inline Renderer integriert. Dieser wird standardmäßig vom Browser genutzt, wenn ein PDF aufgerufen wird. Will man dies umgehen, und stattdessen das PDF direkt zum Download anbieten, müssen nur folgende Header an den Client gesendet werden, und schon bietet auch Firefox die Dialog-Box an:

<?php

// filename
$sFile = 'MeineDateiZumDownload.pdf'    

// setze Header
header('Content-type: application/pdf');
header('Content-Length: ' . filesize($sFile));
header('Content-Transfer-Encoding: binary');
header('Accept-Ranges: bytes');
header('Pragma: no-cache');
header('Expires: 0');
header('Content-Disposition: attachment; filename="' . $sFile . '"');

// lies PDF
readfile($sFile);
This website uses Cookies to provide you with the best possible service. Please see our Privacy Policy for more information. Click the check box below to accept cookies. Then confirm with a click on "Save".