来自CURL请求的流响应,无需等待它完成

and*_*amm 5 php curl

我的服务器上有一个PHP脚本,它向另一台服务器请求图像.

访问该脚本就像这样的常规图像源:

<img src="http://example.com/imagecontroller.php?id=1234" />
Run Code Online (Sandbox Code Playgroud)

浏览器 - >脚本 - >外部服务器

该脚本正在对外部服务器执行CURL请求.

是否有可能将CURL响应直接"流"回客户端(浏览器),因为它在服务器上被接收?

假设我的脚本位于慢速共享托管服务器上,外部服务器速度非常快(CDN).有没有办法在没有我的脚本成为瓶颈的情况下直接将响应提供给客户端?如果我的服务器在开始响应客户端之前不必等待将整个映像加载到内存中,那就太好了.

谢谢

rye*_*guy 11

-N/ --no-bufferflag 传递给curl.它执行以下操作:

禁用输出流的缓冲.在正常工作情况下,curl将使用标准缓冲输出流,其效果是它将以块的形式输出数据,而不一定是数据到达时.使用此选项将禁用该缓冲.

请注意,这是记录的否定选项名称.因此,您可以使用--buffer来强制执行缓冲.