場景:項目中客戶端上傳文件到OSS后,返回給服務端一個OSS的文件對象名稱。
創(chuàng)新互聯(lián)建站是一家集網(wǎng)站建設,衡陽企業(yè)網(wǎng)站建設,衡陽品牌網(wǎng)站建設,網(wǎng)站定制,衡陽網(wǎng)站建設報價,網(wǎng)絡營銷,網(wǎng)絡優(yōu)化,衡陽網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學習、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
服務端拿到文件對象名稱后,需要通過OSSClient生成一個簽名url,然后提供下載服務。
下載服務中,拿到URL后要去校驗該url是否有效,于是使用get_headers()去校驗該文件url是否能正確響應。如下:
$fileUrl='https://cdn.segmentfault.com/v-5c8b4d77/global/img/touch-icon.png';
get_headers($fileUrl, 1);
結果報錯:
get_headers(): SSL operation failed with code 1.
OpenSSL Error messages:
error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed
原因:
get_headers()會對url發(fā)出請求HTTP請求,獲取服務器響應頭信息。
遇到url為https時,會去校驗簽名證書。
解決思路:
關閉證書校驗。
最終實現(xiàn):
//生成文件URL
$fileUrl = ServiceInputVADataService::generateOssSignUrl($objectName);
if (empty($fileUrl)) return $this->Error('無法生成文件URL,請聯(lián)系技術.');
//校驗能否獲取響應狀態(tài)
stream_context_set_default( [
'ssl' => [
'verify_host' => false,
'verify_peer' => false,
'verify_peer_name' => false,
],
]);
if (get_headers($fileUrl, 1) === false) return $this->Error('生成文件URL無法訪問,請聯(lián)系技術.');
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
本文題目:get_headers()請求https報錯解決思路-創(chuàng)新互聯(lián)
文章分享:http://jinyejixie.com/article10/dchogo.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供域名注冊、網(wǎng)頁設計公司、電子商務、網(wǎng)站導航、Google、微信小程序
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)