1

Zend_Pdfを使用して新しいPDFを作成し、ブラウザにファイルをダウンロードさせます。このサイトにはhttps経由でのみアクセスできます。これはファイルの私の出力です:

$output = $pdf->render();
$response = new Zend_Controller_Response_Http();
$response->setHeader('Content-Disposition', 'attachment; filename="xyz.pdf"');
$response->setHeader('Content-type', 'application/pdf');
$response->setHeader('Content-length', strlen($output));
$response->setHeader('Cache-Control', 'private');
$response->setHeader('Expires', '0');
$response->setHeader('Pragma', 'private');
$response->setBody($output);
$response->sendResponse();

この目的のための適切なヘッダーに関する多くの記事を読みましたが、Internet Exporer 8で何かが機能していません。PDFを生成してダウンロードしようとすると、ダウンロードダイアログが表示されますが、ダウンロードするものがないと表示されます。ファイル名が間違っています(xyz.pdfの代わりに、生成フォームが存在するサイトの名前が表示されます)

テスト済みで動作中:Firefox、Chrome、IE9、Opera、Safari

また、多くの記事で説明されているように、Cache-ControleヘッダーまたはPragmaヘッダーのさまざまな可能性を試しました。

4

1 に答える 1

0

さて、3番目のパラメータは上書きオプションです。

$response->setHeader('Cache-Control', 'private', true);
$response->setHeader('Expires', '0', true);
$response->setHeader('Pragma', 'private', true);
于 2012-09-27T10:42:22.680 に答える