日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

微信小程序 - HTTPS 证书链解决方案

發布時間:2024/1/18 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 微信小程序 - HTTPS 证书链解决方案 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

問題信息

errMsg: "request:fail -2:net::ERR_FAILED" errno: 600001

Ps1:這個錯誤是在微信小程序項目遷移的時候,調用 HTTPS API 時一不小心配置錯了很容易產生的問題,DDDD~

Ps2:電腦端工具能訪問 API 成功,估計是勾選了不效驗合法域名的原因,而手機端就顯示報錯

分析原因

  • 猜想1:一開始還以為是 HTTPS 域名沒備案導致的,后來備案成功也不行

  • 猜想2:小程序開發設置里白名單必須填寫服務器 IP?并不是

  • 猜想3:二級域名需要重新備案?頂級備案后即可

  • 猜想4:HTTPS Chrome 瀏覽器訪問域名也是安全鎖了...咋還不行...

  • 翻了一些資料發現是有一個叫“證書鏈”不完整導致的,那么這個“證書鏈”完整去哪里搞?(見微信小程序官方文檔 - 下面標紅重點答案)

HTTPS 證書(采自微信小程序官網文檔)

小程序必須使用 HTTPS/WSS 發起網絡請求。請求時系統會對服務器域名使用的 HTTPS 證書進行校驗,如果校驗失敗,則請求不能成功發起。由于系統限制,不同平臺對于證書要求的嚴格程度不同。為了保證小程序的兼容性,建議開發者按照最高標準進行證書配置,并使用相關工具檢查現有證書是否符合要求。

對證書要求如下:

  • HTTPS 證書必須有效;

  • 證書必須被系統信任,即根證書被已系統內置

  • 部署 SSL 證書的網站域名必須與證書頒發的域名一致

  • 證書必須在有效期內

  • 證書的信任鏈必需完整(需要服務器配置)

  • iOS 不支持自簽名證書;

  • iOS 下證書必須滿足蘋果 App Transport Security (ATS) 的要求;

  • TLS 必須支持 1.2 及以上版本。部分舊 Android 機型還未支持 TLS 1.2,請確保 HTTPS 服務器的 TLS 版本支持 1.2 及以下版本;

  • 部分 CA 可能不被操作系統信任,請開發者在選擇證書時注意小程序和各系統的相關通告。

  • Chrome 56/57 內核對 WoSign、StartCom 證書限制周知

證書有效性可以使用 openssl s_client -connect example.com:443 命令驗證,也可以使用其他在線工具。

除了網絡請求 API 外,小程序中其他 HTTPS 請求如果出現異常,也請按上述流程進行檢查。如 https 的圖片無法加載、音視頻無法播放等。

在線工具地址: https://myssl.com/ssl.html

Tip:輸入域名,點擊檢測,可以發現的確顯示“證書鏈不完整”!

另:在線工具地址: https://www.digicert.com/help(這個用的也比較多)

Tip:一樣的套路,輸入域名,點擊按鈕檢測即可,下面會出分析報告噢~只是這個是英文版

解決方案

獲取完整證書鏈地址: https://myssl.com/chain_download.html

Tip:輸入域名,點擊獲取證書鏈,下面會彈出完整的證書鏈,復制保存也好,按照上面說的下載下來也好,保存為 .crt 文件,最后就只要重新把這個 .crt 生成并發布證書到服務器上即可,因為我這邊是 K8s,所以在下一篇會講解到如何把普通的 HTTP 升級到 HTTPS 在 K8S 上的應用部署方案?!

參考文檔

總結

以上是生活随笔為你收集整理的微信小程序 - HTTPS 证书链解决方案的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。