PHP file_get_contents函數(shù)獲取https內(nèi)容出錯的解決方法
  • 更新時間:2024-12-23 12:54:50
  • 建站經(jīng)驗(yàn)
  • 發(fā)布時間:1年前
  • 344

最近陸陸續(xù)續(xù)接到網(wǎng)友反饋,導(dǎo)航主題在部分情況下會出現(xiàn)錯誤,起初我也是懵的,因?yàn)槲业恼军c(diǎn)并沒有發(fā)現(xiàn)這個錯誤,解決起來比較麻煩,排查了很久一直都未出現(xiàn)問題,但是部分客戶真的遇到了,而且錯誤代碼也已經(jīng)給出,的的確確是導(dǎo)航問題,因?yàn)楸菊臼褂玫氖莗hp7.1,沒有問題,但是也不能讓所有人都去升級,畢竟有些虛擬機(jī)升級可能不是很方法,所以還得從跟上排查,zblogphp所給出的錯誤代碼如下:


“E_WARNING : file_get_contents(//top.baidu.com/buzz?b=1&fr=topcategory_c513): failed to open stream: No such file or directory (set_error_handler) ”用file_get_contents這個php函數(shù)抓取數(shù)據(jù),可能會在部分主機(jī)出現(xiàn)莫名其妙的錯誤,錯誤代碼如圖:


自行百度,查看“file_get_contents”這個函數(shù),于是乎大概知道什么原因了,就是“file_get_contents”在獲取https的連接時會出現(xiàn)如上的錯誤提示,百度的解決辦法一般都是修改php.ini配置文件,找到“extension=php_openssl.dll”這一行,去掉前面的“;”或者找到“allow_url_include = Off ”這一行,將Off改為On,然后重啟服務(wù)器。不過我測試了完全不管用,修改了“extension=php_openssl.dll”文件之后無法重啟php,這就尷尬了。

其實(shí)不用那么麻煩,直接修改php函數(shù)就行,比如我們把鏈接的前面加上http試試看。


解決方法:

找到include.php文件,將“//top.baidu.com/buzz?b=1&fr=topcategory_c513”修改成“http://top.baidu.com/buzz?b=1&fr=topcategory_c513”,如圖:


然后刷新頁面查看效果是否可以用,導(dǎo)航主題模板已經(jīng)更新,不需要在修改,部分客戶自己修改過源碼的請參考教程自行修改,修改完成后,后臺首頁“清空緩存并編譯模板”,然后有問題在反饋給我反饋!

我們專注高端建站,小程序開發(fā)、軟件系統(tǒng)定制開發(fā)、BUG修復(fù)、物聯(lián)網(wǎng)開發(fā)、各類API接口對接開發(fā)等。十余年開發(fā)經(jīng)驗(yàn),每一個項(xiàng)目承諾做到滿意為止,多一次對比,一定讓您多一份收獲!

本文章出于推來客官網(wǎng),轉(zhuǎn)載請表明原文地址:https://www.tlkjt.com/experience/7962.html
推薦文章

在線客服

掃碼聯(lián)系客服

3985758

回到頂部