<strike id="bfd19"><dl id="bfd19"><ruby id="bfd19"></ruby></dl></strike><span id="bfd19"></span>
<span id="bfd19"><video id="bfd19"></video></span>
<strike id="bfd19"><video id="bfd19"><ruby id="bfd19"></ruby></video></strike>
<strike id="bfd19"></strike><th id="bfd19"><video id="bfd19"></video></th>
<span id="bfd19"></span> <strike id="bfd19"></strike>
<strike id="bfd19"><dl id="bfd19"></dl></strike>
<th id="bfd19"><video id="bfd19"></video></th>
<span id="bfd19"></span>
<menuitem id="bfd19"><menuitem id="bfd19"><ruby id="bfd19"></ruby></menuitem></menuitem>
返回舊版| 微信建站| 建站之家論壇| 我要建站 | 建站學習 | 加入收藏
PHPCMS當前位置:首頁 > cms教程 > 綜合cms > PHPCMS > 正文

修復phpcms自帶采集無法采集https網站內容

發布時間:2018-07-24 16:33:21   來源:   點擊:
無法采集https的網站內容主要是https不支持file_get_contents獲取內容,所以可以考慮采用curl的方式獲取。(需要開啟curl,可以在pathinfo里邊查看)

(1)打開phpcms\modules\collection\classes\collection.class.php
在類里邊添加新函數:
  1. protected static function curl_request($url){   
  2.         if (!function_exists('curl_init')) {   
  3.             throw new Exception('server not install curl');   
  4.         }   
  5.         $ch = curl_init(); 
  6.         curl_setopt($ch, CURLOPT_URL,$url); 
  7.         curl_setopt($ch, CURLOPT_HEADER,0); 
  8.         curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);//禁止調用時就輸出獲取到的數據 
  9.         curl_setopt($ch, CURLOPT_FOLLOWLOCATION,1); 
  10.         curl_setopt($ch, CURLOPT_SSL_VERIFYPEER,false); 
  11.         curl_setopt($ch, CURLOPT_SSL_VERIFYHOST,false); 
  12.         $result = curl_exec($ch); 
  13.         curl_close($ch); 
  14.         return $result; 
  15.     }   

(2)找到函數function get_htm把該函數
  1. protected static function get_html($url, &$config) { 
  2.         if (!empty($url) && $html = @file_get_contents($url)) { 
  3.             if ($syscharset != $config['sourcecharset'] && $config['sourcetype'] != 4) { 
  4.                 $html = iconv($config['sourcecharset'], CHARSET.'//TRANSLIT//IGNORE', $html); 
  5.             } 
  6.             return $html; 
  7.         } else { 
  8.             return false
  9.         } 
  10.     } 
改成
  1. protected static function get_html($url, &$config) { 
  2.         if(substr(trim($url),0, 5) == "https"){
              $html = @self::curl_request($url);
          }else{
             $html = @file_get_contents($url);
           }
  3.         if (!empty($url) && $html) { 
  4.             if ($syscharset != $config['sourcecharset'] && $config['sourcetype'] != 4) { 
  5.                 $html = iconv($config['sourcecharset'], CHARSET.'//TRANSLIT//IGNORE', $html); 
  6.             } 
  7.             return $html; 
  8.         } else { 
  9.             return false
  10.         } 
  11.     } 
然后保存即可獲取,測試結果



不知道是否還有其他bug,歡迎留言反饋!
相關欄目
熱門文章
最新圖文
評論排行
版權所有:鄭州騰石網絡科技有限公司 備案信息:豫ICP備18019117號
站長QQ:2863868475 業務合作咨詢:15137100750(同微信)
本站所有投放的廣告是有其他網站提供,不代表本站立場,同時網站首頁廣告位對外出租詳情咨詢本站站長!同時歡迎廣大站長加入個人建站團隊
  • 建站客服
  • CMS仿站
  • CMS學習
  • 技術交流群:336572814
百乐彩是什么意思
<strike id="bfd19"><dl id="bfd19"><ruby id="bfd19"></ruby></dl></strike><span id="bfd19"></span>
<span id="bfd19"><video id="bfd19"></video></span>
<strike id="bfd19"><video id="bfd19"><ruby id="bfd19"></ruby></video></strike>
<strike id="bfd19"></strike><th id="bfd19"><video id="bfd19"></video></th>
<span id="bfd19"></span> <strike id="bfd19"></strike>
<strike id="bfd19"><dl id="bfd19"></dl></strike>
<th id="bfd19"><video id="bfd19"></video></th>
<span id="bfd19"></span>
<menuitem id="bfd19"><menuitem id="bfd19"><ruby id="bfd19"></ruby></menuitem></menuitem>
<strike id="bfd19"><dl id="bfd19"><ruby id="bfd19"></ruby></dl></strike><span id="bfd19"></span>
<span id="bfd19"><video id="bfd19"></video></span>
<strike id="bfd19"><video id="bfd19"><ruby id="bfd19"></ruby></video></strike>
<strike id="bfd19"></strike><th id="bfd19"><video id="bfd19"></video></th>
<span id="bfd19"></span> <strike id="bfd19"></strike>
<strike id="bfd19"><dl id="bfd19"></dl></strike>
<th id="bfd19"><video id="bfd19"></video></th>
<span id="bfd19"></span>
<menuitem id="bfd19"><menuitem id="bfd19"><ruby id="bfd19"></ruby></menuitem></menuitem>