网站提示file_get_contents(): SSL: Handshake timed out错误怎么解决

导航主题模板在部分网友的网站会偶尔提示:file_get_contents(): SSL: Handshake timed out的错误,网友的站点是php5.6版本,但也不是所有的都会出现此错误提示,原因是:在服务器上使用file_get_contents() 函数请求https 协议的url文件时会报错误,无法正确读取文件内容,在PHP中file_get_contents() 函数是用于将文件的内容读入到一个字符串中,是读取文件内容常用的函数之一,也是导航主题模板采集和调用百度热搜的代码。

网站提示file_get_contents(): SSL: Handshake timed out错误怎么解决

主题模板有问题就解决,按照百度经验教程有好几种方法来解决,有的说修改php.ini文件,在php.ini文件里找到 ;extension=php_openssl.dll ,去掉前面的分号“;”,然后重启web服务器即可,如果是apache服务器可以同时启用mod_ssl模块测试以上内容给大家分享了两种方法解决PHP中file_get_contents函数抓取https地址出错,

跳过HTTPS验证:

使file_get_contents()函数跳过https验证

$stream_opts = [
    "ssl" => [
        "verify_peer"=>false,
        "verify_peer_name"=>false,
    ]
]; 
$response = file_get_contents('https://域名',false, stream_context_create($stream_opts));

如上代码,估计是好用的,但是我并没有测试,因为错误是偶尔出现,所以没办法测试,其中“$response”自定义函数,可以直接替换导航主题incloud.php文件中的“$html”,其他直接放在函数里就行,如图:

网站提示file_get_contents(): SSL: Handshake timed out错误怎么解决

修改完成后保存代码,后台首页清空缓存编译,刷新首页看页面是否正常,如果还是出错错误也有看你是缓存,我代码设置的是1小时采集一次,不急的话可以多等等,如果还是无效,尝试最后一种方法。

用curl替换file_get_content()

代码如下:

function get_data($url) {
	$ch = curl_init();
	$timeout = 10;
	curl_setopt($ch,CURLOPT_URL,$url);
	curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);	       //返回结果
	curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);      //设置超时   
	curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);       //https请求不验证证书
	curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);       //https请求不验证hosts   
	$bddata = curl_exec($ch);
	curl_close($ch);
	return $bddata;
}

然后把导航模板incloud.php文件,复制如上代码,将其放在“function navlee_bdhotword()”之前,在代码中找到“$html = file_get_contents('https://top.baidu.com/board?tab=realtime');”替换成“$html = get_data('https://top.baidu.com/board?tab=realtime');”即可,然后保存文件,后台清空缓存编译,修改代码前记得千万要备份,备份,备份。

以上代码就是针对“file_get_contents(): SSL: Handshake timed out”的几种解决方案,仅仅针对主题模板,代码仅供参考,如果遗漏望各位大佬斧正,哦对了,导航主题模板会即使更新,不会修改也没有问题,直接更新主题模板就好了,这个应该都会的吧!

文章声明:以上内容(如有图片或视频亦包括在内)除非注明,否则均为网站名称原创文章,转载或复制请以超链接形式并注明出处。https://xz.itlaoli.com/blog/623.html

« 上一篇
下一篇 »

相关推荐

Linux手动分区挂载10TB磁盘到 /www目录并安装宝塔面板到数据盘的完整教程

2025年10月16日

434阅读

记录Windows11系统暂停更新怎么延长周数的教程

2025年08月25日

2849阅读

Windows11失败,提示“ahsProtector-你的电脑上有服务尚未准备好用于此版本的Windows”的解决方案

2025年08月21日

3310阅读

zblogPHP李洋个人博客主题使用网址导航模板的图文教程

2025年05月27日

5605阅读

百度普通收录API提交后提示 {"error":400,"message":"site init fail"}问题怎么解决?

2025年03月03日

5065阅读

zblog应用中心后台无法更新主题模板及无法新建标签的解决办法

2025年02月24日

6606阅读

发表评论

访客 访客
评论列表 (暂无评论,7488人围观)

还没有评论,来说两句吧...

取消
微信二维码
微信二维码
支付宝二维码