首页 > 解决方案 > 大型 pdf 上的 PHP readfile() 使 Google Cloud 服务器崩溃

问题描述

我想在我自己的网站上显示一个外部 pdf。为此,我有以下代码:

$bigPDF = 'https://www.courtlistener.com/recap/gov.uscourts.dcd.219024/gov.uscourts.dcd.219024.9.0_1.pdf';
$smallPDF = 'https://www.courtlistener.com/recap/gov.uscourts.dcd.219024/gov.uscourts.dcd.219024.9.1_1.pdf';
header('Content-type: application/pdf');
readfile($bigPDF);

当我尝试在我的 Google Cloud Platform 服务器上运行它时,我多次收到此错误,然后服务器崩溃:

ERROR: unable to read what child say: Bad file descriptor (9)

但是,如果我更改readfile($bigPDF)readfile($smallPDF),则代码可以正常工作并且 pdf 会正确显示。

此外,两个 pdf 在我的本地开发服务器上都可以正常显示。只有当我上传到谷歌云平台时,大案卷才会使服务器崩溃。对我来说,这意味着该错误可能与我的 Google Cloud 服务器设置有关,但是对于这样一个无法描述的错误代码,我不知道从哪里开始寻找。

标签: phpgoogle-cloud-platform

解决方案


推荐阅读