问题描述
我正在使用自定义的 ubuntu 服务器(8 核,32gb ram)@DigitalOcean ==> 可能是 linux 网络中的一个问题
所以基本上......我的代码示例:
// Call the remote file
$ch = curl_init();
curl_setopt($ch,CURLOPT_USERAGENT,'Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML,like Gecko) Chrome/40.0.2214.91 Safari/537.36 OPR/27.0.1689.54');
curl_setopt($ch,CURLOPT_URL,$image_url);
#curl_setopt($ch,CURLOPT_DNS_USE_GLOBAL_CACHE,true);
#curl_setopt($ch,CURLOPT_HTTP_CONTENT_DECODING,false);
#curl_setopt($ch,CURLOPT_SSL_ENABLE_ALPN,CURLOPT_SSL_ENABLE_NPN,CURLOPT_TCP_FASTOPEN,CURLOPT_POSTFIELDS,CURLOPT_DNS_CACHE_TIMEOUT,3600);
curl_setopt($ch,CURLOPT_DNS_SERVERS,"208.67.222.222,208.67.220.220");
curl_setopt($ch,CURLOPT_HTTPHEADER,array('Expect:'));
curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,false);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);
curl_setopt($ch,CURLOPT_POST,CURLINFO_HEADER_OUT,true);
curl_setopt($ch,CURLOPT_AUTOREFERER,CURLOPT_ENCODING,'gzip,deflate');
curl_setopt($ch,CURLOPT_BINARYTRANSFER,CURLOPT_HTTPGET,CURLOPT_NOBODY,false);
$referrer = parse_url($image_url);
$referrer = $referrer['scheme'] . '://' . $referrer['host'];
if ( ! empty($referrer)) {
curl_setopt($ch,CURLOPT_REFERER,$referrer);
}
curl_setopt($ch,CURLOPT_FOLLOWLOCATION,CURLOPT_POSTREDIR,7);
curl_setopt($ch,CURLOPT_FILE,$fp);
curl_setopt($ch,CURLOPT_HEADER,0);
curl_setopt($ch,CURLOPT_TIMEOUT,60);
$data = curl_exec($ch);
$info = curl_getinfo($ch);
所以注释掉的部分用多种变体(真、假等)进行了测试......并没有产生任何影响。 当我尝试下载图像时,dns 只是响应缓慢.. 我尝试了 8.8.8.8、208.67.222.222 ......这让它快了一点......从 500 毫秒到 350 毫秒......但我仍然知道它可以更快。
我用 Google GO 尝试了同样的事情.. 发生了同样的问题..
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)