Windows 環境 PowerShell 設定 proxy 方法

2016-11-14

前言

會有這篇文章是因為,由於 Facebook 大約於兩三個禮拜前推出了超級快速的套件管理器 Yarn 而小弟我就想要來試試看,並在公司的電腦安裝 Yarn,因為 npm 的速度實在太鳥了,只好怒裝 Yarn,結果因為公司電腦是使用 Windwos 的作業系統,而又有 proxy 要設定,真的是每次都要突破重重關卡才能完成安裝啊(汗),這篇就是來介紹【在 Windwos 安裝 Yarn,必須透過 PowerShell 安裝 chocolatey 才能安裝 Yarn,因此要讓 PowerShell 可以透過 proxy 可以出去的設定】(這名字也太長了~)。

步驟

  1. 先開啟萬惡的 IE,更改 IE proxy 設定,Tools > Internet Options > Connections > LAN settings > proxy server,輸入完畢並選取 proxy server,儲存設定!(方便套用)

  2. 使用 Administrator 權限開啟 PowerShell(點右鍵選項),先用指令看是否有 proxy 設定

    1
    netsh winhttp show proxy
  3. 讓 PowerShell 直接導入 IE proxy 設定

    1
    netsh winhttp import proxy source=ie
  4. 設定使用者權限 (username, password)

    1
    2
    3
    $webclient=New-Object System.Net.WebClient
    $creds=Get-Credential
    $webclient.Proxy.Credentials=$creds
    • 這步驟直接三行複製貼上,windows 會跳出視窗讓你輸入帳號密碼。請注意,這個步驟每次重開 PowerShell 都需要重新給予使用者權限。
  5. 如果你的電腦有 PowerShell x64 與 x86 版本,在安裝其他程式之前,你必須先設定 execution policy 才能完成安裝。

    1
    Set-ExecutionPolicy RemoteSigned
  6. 執行你要安裝程式的 script (ex: 安裝 chocolatey)

實測與後記

這邊設定完成應該就可以暢行無阻的安裝 Yarn 了,安裝好 chocolatey 後並不需要再對 chocolatey 再次設定 proxy(至少我自己是這樣),就可以順利完成安裝 Yarn 的步驟,官方都寫得很清楚直接參考官方的即可。

由於 Yarn 與 npm 都是吃 package.json 檔案,所以基本上他們是可以無痛轉換的,當你 git clone 一個 repository 下來,可以直接選擇要使用 Yarn 或是 npm 來安裝套件,我自己實測 npm 原本要 3~5 分鐘的安裝時間,Yarn 大概在 30 秒就可以完成安裝了,這速度真的是海放 npm,當然原本可以在 npm install 偷懶的時間也隨著 Yarn 的出現而煙消雲散了(?)

參考資料