我的网站上有一个图像代理,它在我的域的 https 上提供图像,以允许完全信任 SSL 连接。
以这个链接为例:
https://www.mylesgray.com/lastfm/85982517.png
这通过我的域上的 HTTPS 提供来自 last.fm 的 CDN 的专辑插图,该 CDN 在 HTTP 上。
然而,它长期缓慢,我不知道为什么,它正在访问的页面是:
http://userserve-ak.last.fm/serve/64s/85982517.png
如您所见,速度差异很大,虽然我不知道为什么我的脚本这么慢,但它的操作非常简单:
$args = $_GET['q'];
list($img) = explode("/", $args);
header('Content-Type: image/png');
echo file_get_contents('http://userserve-ak.last.fm/serve/64s/' . $img);
它所做的只是抓取图像并重新提供它。
有什么方法可以在整个堆栈的哪个阶段(从 Web 服务器到 php 脚本)进行调试,导致速度如此缓慢?
当您比较这两个页面时,您可以看到它的效果:
第二个使用代理来提供图像。