Skip to main content

Command Palette

Search for a command to run...

公司 Proxy 下 npm install 的 SSL 問題解法

Updated
1 min read

在公司網路有 Proxy 或自簽憑證 (self-signed cert) 的情況下,
執行 npm install 可能會遇到 SSL 認證錯誤

以下是常見的解法:


🔧 解法一:關閉 SSL 驗證

npm config set strict-ssl false

缺點:不安全,會允許不可信憑證。


🔧 解法二:指定公司憑證檔案

npm config set cafile <path-to-cert>

讓 npm 認得公司 CA,推薦這種做法(比完全關閉驗證安全)。


🔧 解法三:環境變數設定

  1. 額外載入公司憑證

     set NODE_EXTRA_CA_CERTS=<path-to-cert>   # Windows CMD
     export NODE_EXTRA_CA_CERTS=<path-to-cert> # Linux / macOS
    
  2. 完全忽略 SSL 驗證

     set NODE_TLS_REJECT_UNAUTHORIZED=0   # Windows CMD
     export NODE_TLS_REJECT_UNAUTHORIZED=0 # Linux / macOS
    

    ⚠️ 等同於關閉所有 Node.js 程式的 SSL 驗證,不建議長期使用。


✅ 建議

  • 優先使用 cafile 或 NODE_EXTRA_CA_CERTS,保留基本安全性。

  • strict-ssl=falseNODE_TLS_REJECT_UNAUTHORIZED=0 只建議在 測試環境 短暫使用。

npm 安裝時會有先從 cache 安裝,可透過 `npm cache clean —force` 清除

More from this blog

Android Edge-to-Edge & View 類型筆記

1️⃣ enableEdgeToEdge() 作用:讓 Activity 畫面延伸到 狀態列 / 導覽列 底下。 預設行為: 狀態列透明。 導航列自動套用 scrim(半透明遮罩)確保對比度,API 29+ 支援自動亮暗判斷。 好處:畫面可以全螢幕顯示,UI 更現代化。 2️⃣ ViewCompat.setOnApplyWindowInsetsListener(...) 作用:監聽系統 WindowInsets(安全區域)。 用途:避免內容被狀態列 / 導覽列擋住。 範...

Aug 18, 20251 min read

Tech notes

5 posts