我正在使用symfony 1.4。我创建了一个pdf并在新窗口中显示。在我点击其他链接后显示pdf后,我得到了以下类型的代码。我认为它显示了我的html源文件。
如何解决此问题?
141070HTTP / 1.1 200 OK日期:星期三,13 2011年4月13:22:07 GMT服务器: Apache / 2.0.63(Unix)mod_ssl / 2.0.63 OpenSSL的/ 0.9.8e - FIPS的RHEL5 mod_auth_passthrough / 2.1 mod_bwlimited / 1.4 FrontPage / 5.0.2.2635 X-Powered-By:PHP / 5.3.4过期:周四, 1981年11月19日08:52:00 GMT 缓存控制:无存储,无缓存, 必须重新验证,post-check = 0, pre-check = 0 Pragma:no-cache 保持活跃:超时= 15,最大= 94 连接:保持活力 转移编码:分块 内容类型:text / html;字符集= utf-8的 ...... ......
这是我的symfony代码,用于显示pdf。
$this->getResponse()->clearHttpHeaders();
$this->getResponse()->setHttpHeader('Content-Disposition', 'inline; filename="' . basename($path) . '"');
$this->getResponse()->setHttpHeader('Content-type', 'application/pdf');
$this->getResponse()->setHttpHeader('Pragma: public', true);
$this->getResponse()->setHttpHeader('Expires', 0);
$this->getResponse()->setHttpHeader('Content-Transfer-Encoding', 'binary');
$this->getResponse()->setHttpHeader('Content-Length', filesize($path));
$this->getResponse()->sendHttpHeaders();
ob_clean();
flush();
echo readfile($path);
答案 0 :(得分:1)
141070
来自哪里?它是第一个发送给客户端的,它应该是HTTP/1.1 200 OK
,它会触发HTML呈现。
客户端可能不知道如何处理数据,因此直接呈现它。