使用 symfony1 我在服务器端准备了一个 pdf 文件并将其返回给浏览器。在多个服务器/站点上使用相同的浏览器运行此代码时,它工作正常,除了一台服务器。在这种情况下,pdf 内容呈现到浏览器窗口中,而不是嵌入显示(甚至弹出下载窗口)。这种奇怪的行为与浏览器无关(在最新的 Chrome、Firefox 和 Safari 上尝试过)。请在日志行下方找到,这些在每台服务器上都是相同的。
Dec 27 00:03:30 frontend: {sfView} initialize view for "report/runReport"
Dec 27 00:03:30 frontend: {sfView} render ".../frontend/modules/report/templates/runReportSuccess.php"
Dec 27 00:03:30 frontend: {sfFilter} render to client
Dec 27 00:03:30 frontend: {sfResponse} send status "HTTP/1.0 200 OK"
Dec 27 00:03:30 frontend: {sfResponse} send header "Pragma": "public"
Dec 27 00:03:30 frontend: {sfResponse} send header "Cache-Control": "cache-control=max-age=0,must-revalidate, post-check=0, pre-check=0"
Dec 27 00:03:30 frontend: {sfResponse} send header "Content-Transfer-Encoding": "binary"
Dec 27 00:03:30 frontend: {sfResponse} send header "Content-Type": "application/pdf"
Dec 27 00:03:30 frontend: {sfResponse} send header "Content-Length": "77225"
Dec 27 00:03:30 frontend: {sfResponse} send header "Content-Disposition": "inline; filename="aging-debt.pdf""
Dec 27 00:03:30 frontend: {sfResponse} send header "Charset": "utf-8"
Dec 27 00:03:30 frontend: {sfResponse} send content (77225 o)
将服务器环境与工作服务器和非工作服务器进行比较,两者都运行 Debian 6.0 和 PHP 5.3.3-7+squeeze14 和 Suhosin-Patch。
该 url 使用简单的 JavaScript window.open 打开,客户端没有运行其他代码或事件侦听器。请告知,我应该检查什么设置来解决这个问题。谷歌搜索它,但只找到未回答的问题,例如浏览器有时会显示 pdf 内容而不是 html 页面?[关闭]。