Ecmsphp开发中心

1252

帖子

19

跟帖

8

粉丝

用户组:普通会员

头    衔:白银会员

版主

积分
356930
登陆
2134 次
私信
注册时间
2014-06-21 14:06:06
最后登陆时间
2023-09-24 16:04:46

帝国CMS后台采集不支持HTTPS怎么办?(帝国CMS后台采集支持https开头的协议的方法)

 [只看主题]
楼主
0 |
发表: 3 年前
| |
| |
跳转

  帝国CMS后台采集不支持HTTPS怎么办?(帝国CMS后台采集支持https开头的协议的方法)

  相信使用过帝国CMS后台采集的朋友们都知道,帝国CMS后台采集是不支持HTTPS的,那么我们需要进行内容采集的时候,而对方网站正好是HTTPS网站,这个时候怎么办呢?下面帝国cms模板网就来告诉大家帝国CMS后台采集支持https开头的协议的方法:

  修改:/e/class/connect.php文件

  在该文件最上面加上以下函数

  //获取https链接内容

function getHTTPS($url) {
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
        curl_setopt($ch, CURLOPT_HEADER, false);
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_REFERER, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
        $result = curl_exec($ch);
        curl_close($ch);
        return $result;
}

  找到ReadFiletext函数如下代码:

function ReadFiletext($filepath){
    $filepath=trim($filepath);
    $htmlfp=@fopen($filepath,"r");
    //远程
    if(strstr($filepath,"://"))
    {
        while($data=@fread($htmlfp,500000))
        {
            $string.=$data;
        }
    }


    //本地
    else
    {
        $string=@fread($htmlfp,@filesize($filepath));
    }
    @fclose($htmlfp);
    return $string;
}

  改成:

function ReadFiletext($filepath){
	$filepath=trim($filepath);
	$htmlfp=@fopen($filepath,"r");
	//远程
	
	if(strstr($filepath,"https://")){
                return getHTTPS($filepath);
        }
	
	if(strstr($filepath,"://"))
	{
		while($data=@fread($htmlfp,500000))
	    {
			$string.=$data;
		}
	}


	//本地
	else
	{
		$string=@fread($htmlfp,@filesize($filepath));
	}
	@fclose($htmlfp);
	return $string;
}

  完成以上的修改流程步骤,自此可实现采集https开头的网页链接!

  好来 !OK,搞定!大家可以自行测试看看!


ecmsphp开发中心
ecmsphp开发中心
验证码 换一个

当前在线人数: 0
取消

感谢您的支持,我们会继续努力!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

×

打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

帝国CMS后台采集不支持HTTPS怎么办?(帝国CMS后台采集支持https开头的协议的方法)