mac終端設置代理

在Mac上配置終端走代理,需設置終端(如zsh或bash)使用HTTP/HTTPS/SOCKS代理,以便命令行工具(如curl、git、npm)通過代理訪問網絡。以下是詳細步驟,適用于macOS 10.15及以上版本。

前提條件

  • 代理服務器信息:需知道代理服務器的地址、端口及類型(HTTP、HTTPS或SOCKS)。例如:http://proxy.example.com:8080socks5://127.0.0.1:1080
  • 終端:默認使用zsh(macOS Catalina及以上),若使用bash,步驟類似。
  • 管理員權限:部分配置可能需要修改系統文件。

配置步驟

以下是配置終端走代理的幾種方法,根據需求選擇適合的方案。

方法 1:臨時設置代理(單次會話)

適用于臨時測試代理設置,關閉終端后失效。

  1. 打開終端

    • 打開“應用程序 > 實用工具 > 終端”。
  2. 設置環境變量

    • 對于HTTP/HTTPS代理,運行以下命令(替換為你的代理地址和端口):
      export http_proxy=http://proxy.example.com:8080
      export https_proxy=http://proxy.example.com:8080
      export all_proxy=http://proxy.example.com:8080
      
    • 對于SOCKS5代理,運行:
      export all_proxy=socks5://127.0.0.1:1080
      
    • 說明:
      • http_proxy:用于HTTP請求。
      • https_proxy:用于HTTPS請求。
      • all_proxy:通用代理設置,部分工具(如curl)會優先使用。
  3. 驗證代理

    • 測試代理是否生效:
      curl -I https://www.google.com
      
    • 若返回HTTP狀態碼(如200),說明代理生效。若失敗,檢查代理地址或網絡。
  4. 取消臨時代理

    • 清除代理設置:
      unset http_proxy https_proxy all_proxy
      
方法 2:持久化代理配置(全局生效)

適用于長期使用代理,配置寫入終端配置文件。

  1. 編輯終端配置文件

    • 確定你的終端Shell:
      • 默認zsh:編輯 ~/.zshrc
      • bash:編輯 ~/.bashrc
    • 打開配置文件(以zsh為例):
      nano ~/.zshrc
      
  2. 添加代理設置

    • 在文件末尾添加以下行(替換為你的代理地址和端口):
      export http_proxy=http://proxy.example.com:8080
      export https_proxy=http://proxy.example.com:8080
      export all_proxy=http://proxy.example.com:8080
      
    • SOCKS5代理示例:
      export all_proxy=socks5://127.0.0.1:1080
      
  3. 保存并應用

    • 保存文件(nano中按 Ctrl+O,回車,然后 Ctrl+X 退出)。
    • 應用配置:
      source ~/.zshrc
      
    • 或重啟終端。
  4. 驗證代理

    • 測試:
      curl -I https://www.google.com
      
    • 確認是否通過代理訪問。
方法 3:特定工具的代理配置

某些工具(如git、npm)需要單獨配置代理。

  1. 配置git代理

    • 設置HTTP/HTTPS代理:
      git config --global http.proxy http://proxy.example.com:8080
      git config --global https.proxy http://proxy.example.com:8080
      
    • SOCKS5代理:
      git config --global http.proxy socks5://127.0.0.1:1080
      git config --global https.proxy socks5://127.0.0.1:1080
      
    • 取消git代理:
      git config --global --unset http.proxy
      git config --global --unset https.proxy
      
  2. 配置npm代理

    • 設置代理:
      npm config set proxy http://proxy.example.com:8080
      npm config set https-proxy http://proxy.example.com:8080
      
    • 取消npm代理:
      npm config delete proxy
      npm config delete https-proxy
      
方法 4:使用代理客戶端(如Shadowsocks、V2Ray)

若使用代理客戶端(如Shadowsocks、V2Ray),可通過系統代理或本地SOCKS5代理配置終端。

  1. 檢查代理客戶端

    • 確保代理客戶端運行并提供本地代理端口(如 127.0.0.1:1080)。
  2. 配置終端走本地代理

    • 編輯 ~/.zshrc,添加:
      export http_proxy=http://127.0.0.1:1080
      export https_proxy=http://127.0.0.1:1080
      export all_proxy=socks5://127.0.0.1:1080
      
    • 保存并運行:
      source ~/.zshrc
      
  3. 驗證

    • 測試:
      curl -I https://www.google.com
      

注意事項

  • 大小寫敏感:環境變量 http_proxyHTTP_PROXY 可能被不同工具識別,確保使用小寫形式(如 http_proxy),部分工具也支持大寫。
  • 代理認證
    • 若代理需要用戶名和密碼,格式為:
      export http_proxy=http://username:password@proxy.example.com:8080
      
  • 繞過代理
    • 設置 no_proxy 跳過特定域名:
      export no_proxy="localhost,127.0.0.1,.example.com"
      
  • 系統代理同步
    • 若已通過系統偏好設置配置代理(系統設置 > 網絡 > 高級 > 代理),終端可能自動繼承,優先級低于手動設置。
  • 性能問題
    • 代理可能導致命令行工具(如Homebrew、npm)速度變慢,檢查代理服務器穩定性。
  • 取消持久化配置
    • 編輯 ~/.zshrc~/.bashrc,刪除相關代理行,運行 source ~/.zshrc

問題排查

  • 代理無效
    • 確認代理服務器地址和端口正確。
    • 測試代理:curl -x http://proxy.example.com:8080 https://www.google.com
  • 連接超時
    • 檢查代理客戶端是否運行,或網絡防火墻是否阻止連接。
  • 命令未生效
    • 確保 source ~/.zshrc 已執行,或重啟終端。
  • 若有具體錯誤信息,請提供,我可進一步協助。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/89895.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/89895.shtml
英文地址,請注明出處:http://en.pswp.cn/web/89895.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

VSTO Excel中打開WinForm.ShowDialog()后,如果要使用當前的wb.Application在后臺操作其他Excel文件(保持隱藏狀態)

在VSTO Excel中打開WinForm.ShowDialog()后,如果要使用當前的wb.Application在后臺操作其他Excel文件(保持隱藏狀態),可以通過以下幾種方式實現: 方法一:設置Application屬性控制可見性 // 在WinForm中獲取…

【網絡安全】DDOS攻擊

如果文章不足還請各位師傅批評指正!你有沒有過這種經歷:雙 11 搶券時頁面卡成幻燈片,游戲團戰突然全員掉線,刷視頻時進度條永遠轉圈圈?除了 “網渣”,可能還有個更糟的原因 —— 你正被 DDoS 攻擊 “堵門”…

第9天 | openGauss中一個表空間可以存儲多個數據庫

接著昨天繼續學習openGauss,今天是第9天了。今天學習內容是o一個數據庫可以存儲在多個表空間中。 老規矩,先登陸墨天輪為我準備的實訓實驗室 rootmodb:~# su - omm ommmodb:~$ gsql -r作業要求 1.創建表空間newtbs1 omm# CREATE TABLESPACE newtbs1 RELATIVE LOCATI…

H3C路由器模擬PPPOE撥號

拓撲簡圖 效果圖 PPPoE服務器端腳本 1. 基礎配置 system-view sysname PPPoE-Server # 可選,設置設備名稱2. 創建本地用戶(認證賬號)? local-user pppuser class network # 創建網絡類用戶 password simple 123456 # 設置密碼(PAP/CHAP共用) service-type ppp #

Github Actions Workflows 上傳 Dropbox

一、注冊 訪問 https://www.dropbox.com/register選擇 "個人" 如果想免費使用,一定要選擇 “繼續使用2GB的Dropbox Basic 套餐”,如下: 二、在 Dropbox 中 創建app 需要去注冊的郵箱中驗證一下郵箱.訪問 https://www.dropbox.com…

生產管理系統實現生產全過程可視化

隨著現代工業的不斷發展,智能制造、數字化轉型已成為企業提高競爭力的重要途徑。生產管理作為企業運營的核心環節,直接關系到產品質量、生產效率以及成本控制。傳統的生產管理方式大多依賴手工記錄和經驗管理,存在信息滯后、數據不一致、響應…

CSS實現背景色下移10px

眾所周知,背景顏色是不能移動的,通常是填充滿當前容器。 不過可以想想其它辦法。。 ?? 利用css3的線性屬性linear,在垂直方向向下推要移動的距離設成透明顏色,能在視覺上巧妙實現下移的效果。 .title {height: 20px;background: linear-gradient(to bottom,rgba(255, …

訪問 gitlab 跳轉 0.0.0.0

1、檢查防火墻是否關閉2、檢查服務器端口是否被占用3、檢查服務器是否對外開放80端口(gitlab 默認使用80端口)以阿里云服務器為例如果沒有SSH 、HTTP、HTTPS 開放,需要增加規則進行添加點擊確定即可。

Kotlin集合與空值

我們已經學習了 Kotlin 中的空安全(null safety)。在本節中,我們將討論如何處理集合中的空值(null),因為集合比其他數據類型更復雜。我們還將討論如何處理可空元素時常用的便利方法。 集合與空值 可空集合和…

nextjs編程式跳轉

Next.js 中&#xff0c;你可以通過多種方式實現編程式導航&#xff08;即通過代碼而非 <Link> 組件跳轉頁面&#xff09;。以下是完整的實現方法&#xff1a; 1. 使用 useRouter Hook&#xff08;函數組件&#xff09; 這是最常用的方法&#xff0c;適用于函數組件&#…

Git Remote命令介紹:遠程倉庫管理

一、Git Remote 是什么 git remote主要用于管理遠程倉庫&#xff0c;可以輕松地與遠程倉庫進行交互&#xff0c;實現代碼的共享與同步 。 二、Git Remote 的作用 &#xff08;一&#xff09;連接橋梁 假設你正在參與一個大型的 Web 應用開發項目&#xff0c;團隊成員分布在…

Android開發中的11種行為型設計模式深度解析

在Android應用開發中&#xff0c;設計模式是解決特定問題的可重用方案&#xff0c;其中行為型設計模式尤其重要&#xff0c;它們專注于對象之間的通信和職責分配。本文將深入解析Android開發中最常用的11種行為型設計模式&#xff0c;每個模式都配有詳細的介紹和實際應用示例&a…

Python 模塊未找到?這樣解決“ModuleNotFoundError”

在 Python 開發中&#xff0c;遇到“ModuleNotFoundError”時&#xff0c;通常是因為 Python 解釋器無法找到你嘗試導入的模塊。這可能是由于多種原因導致的&#xff0c;比如模塊未安裝、路徑不正確、虛擬環境未激活等。今天&#xff0c;就讓我們一起探討如何解決“ModuleNotFo…

Numpy庫,矩陣形狀與維度操作

目錄 一.numpy庫簡介與安裝 numpy庫的安裝 二.numpy核心功能 1.矩陣處理 2.數學運算 三.數據的維度與屬性 1.維度管理 2.屬性方法 四.數據類型與存儲范圍 五.矩陣形狀與維度操作 六.數據升維與reshape()方法 一.numpy庫簡介與安裝 NumPy是Python中用于科學計算的核心…

圖論(2):最短路

最短路一、模板1. Floyd2. 01BFS3. SPFA4. Dijkstra&#xff08;弱化版&#xff09;5. Dijkstra&#xff08;優化版&#xff09;二、例題1. Floyd1.1 傳送門1.2 無向圖最小環1.3 災后重建1.4 飛豬2. 01BFS2.1 Kathiresan2.2 障礙路線2.3 奇妙的棋盤3. SPFA3.1 奶牛派對3.2 營救…

“融合進化,智領未來”電科金倉引領數字化轉型新紀元

一、融合進化 智領未來電科金倉2025產品發布會重磅開啟&#xff01; 7月15日&#xff0c;以“融合進化 智領未來”為主題的電科金倉2025產品發布會在北京舉辦。產品發布會上展示了四款代表未來數字化趨勢的創新性產品。這些產品不僅涵蓋了數據庫技術&#xff0c;還涉及到數據集…

常規筆記本和加固筆記本的區別

在現代科技產品中&#xff0c;筆記本電腦因其便攜性和功能性被廣泛應用。根據使用場景和需求的不同&#xff0c;筆記本可分為常規筆記本和加固筆記本&#xff0c;二者在多個方面存在顯著區別。適用場景是區分二者的重要標志。常規筆記本主要面向普通消費者和辦公人群&#xff0…

Shell 腳本編程全面學習指南

前言Shell 腳本編程是 Linux 和 Unix 系統管理、自動化任務的核心工具之一。通過 Shell 腳本&#xff0c;你可以自動化重復性操作、簡化復雜流程、提高系統管理效率&#xff0c;甚至構建完整的自動化運維工具。本文將帶你從基礎到進階&#xff0c;全面學習 Shell 腳本編程&…

DelayQueue延遲隊列的使用

1、DelayQueue簡介 DelayQueue 也是 Java 并發包&#xff08;java.util.concurrent&#xff09;中的一個特殊隊列,用于在指定的延遲時間之后處理元素。 DelayQueue的一些關鍵特性&#xff1a; 延遲元素處理&#xff1a;只有當元素的延遲時間到期時&#xff0c;元素才能被取出…

QT6 源,七章對話框與多窗體(6) 顏色對話框 QColorDialog :本類的屬性,信號函數,靜態成員函數,以及源代碼

&#xff08;1&#xff09;本類的繼承關系如下 &#xff1a;&#xff08;2&#xff09; 對于本標準顏色對話框來講&#xff0c;學會使用其靜態函數以獲取到顏色就足夠了。&#xff08;3&#xff09; 開始學習本類的靜態成員函數 &#xff1a;&#xff08;4&#xff09;測試一下…