php file_get_contents遇到https的处理办法
生活随笔
收集整理的這篇文章主要介紹了
php file_get_contents遇到https的处理办法
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
?
最近調(diào)整了文件上傳后的資源路徑,導(dǎo)致pageOffice在線編輯功能無法正常使用,每一次打開文件都報(bào)錯(cuò):該文件為0字節(jié)。仔細(xì)看了一下程序,整理邏輯流程如下圖:
?
增加日志后發(fā)現(xiàn),保存在服務(wù)器路徑下的該條數(shù)據(jù)的文件確實(shí)是0字節(jié),說明在從遠(yuǎn)端下載到本地的過程中有問題。
?
我寫了一個(gè)測試腳本來測試獲取遠(yuǎn)程文件,如下:
$url = 'https://xxx/dddsd/ccd.doc'; $content = file_get_contents($url); var_dump($content);?
報(bào)錯(cuò)如圖:
?
?
?
這是因?yàn)檫h(yuǎn)程資源($url)是用的https協(xié)議,做了證書驗(yàn)證。請求這種資源必須加證書驗(yàn)證或者關(guān)閉ssl參數(shù),為了方便我選擇了后者。
最后代碼修改如下:
$stream_opts = ["ssl" => ["verify_peer"=>false,"verify_peer_name"=>false,]];$url = 'https://xxx/dddsd/ccd.doc';$content = file_get_contents($url);var_dump($content);就能獲取到正常資源了。
轉(zhuǎn)載于:https://www.cnblogs.com/freephp/p/11027412.html
總結(jié)
以上是生活随笔為你收集整理的php file_get_contents遇到https的处理办法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: (私人收藏)2019科协WER解决方案
- 下一篇: 如何理解 Web API