首页 文章

通过HTTPS在Internet Explorer 8中使用Zend_Pdf流

提问于
浏览
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();

我已经阅读了许多关于用于此目的的正确 Headers 的文章,但有些东西在Internet Exporer 8中不起作用 . 每次尝试生成并下载pdf时,下载对话框都会显示,但它表示没有任何内容可供下载 . 文件名错误(而不是xyz.pdf,它显示生成表单所在的站点的名称)

经过测试和使用:Firefox,Chrome,IE9,Opera,Safari

我也尝试过Cache-Controle标头或Pragma Header的不同可能性,就像许多文章所说的那样 .

1 回答

  • 0

    好的,第三个参数是覆盖选项 .

    $response->setHeader('Cache-Control', 'private', true);
    $response->setHeader('Expires', '0', true);
    $response->setHeader('Pragma', 'private', true);
    

相关问题