vue.config.js配置代理不生效_iMac各种代理设置方法汇总
寫在前面
由于各種各樣的墻的原因,導致日常開發(fā)中我們會遇到各種各樣的因為網(wǎng)絡的問題導致的不能訪問、超時等問題。每次遇到都會去查一遍,很是費時,今天專門總結(jié)匯總一下。由于考慮到需要不停的切斷是否使用,因此這里不再介紹設備全局代理的設置方式。
對于Mac環(huán)境,我們大部分時間都是使用命令行,因此代理配置相關的主要就是關于shell的代理配置。很奇怪shell命令行下配置的代理僅僅對shell相關的部分命令(例如wget等)生效,不是對整個機器生效(例如npm等還是要使用專門的代理)。當然也有可能由于公司網(wǎng)絡異常復雜,因此會有各種代理配置,是別的代理配置的問題,引起代理在部分命令下沒有生效。不管是什么原因,這里都總結(jié)一下相關命令的代理配置。
shell下的代理配置
配置方法
shell的網(wǎng)絡代理有兩種方法,一種是直接通過命令行配置,一種是直接設置在配置文件,在終端啟動時自動加載。兩種方法都是使用export設置環(huán)境變量的方式來實現(xiàn),方法一致:
# 配置生效export http_proxy='http://proxy.com:8080';
export https_proxy='http://proxy.com:8080';
# 刪除配置
export http_proxy='';
export https_proxy='';
命令行配置事例
通過命令行可以完成網(wǎng)絡代理的切換,包括代理添加、刪除代理以及修改代理。具體事例如下
# 添加? temp export http_proxy='http://proxy.com:8080';
? temp export https_proxy='http://proxy.com:8080';
# 查看
? temp echo $http_proxy $https_proxy
http://proxy.com:8080 http://proxy.com:8080
# 修改
? temp export https_proxy='http://test-proxy.com:8080';
# 查看
? temp echo $http_proxy $https_proxy
http://dev-proxy.oa.com:8080 http://test-proxy.com:8080
# 刪除
? temp export http_proxy='';
? temp echo $http_proxy $https_proxy
http://dev-proxy.oa.com:8080
? temp export https_proxy='';
? temp echo $http_proxy $https_proxy
? temp
shell環(huán)境變量配置事例
如果是在環(huán)境變量中設置對應的參數(shù),一般都是默認添加代理,然后當需要取消代理的時候再通過命令行使配置不生效。之所以已經(jīng)有命令行的情況下還提供環(huán)境變量的設置是因為環(huán)境變量的配置會在每次shell終端啟動時自動加載,因此不需要每次配置。目前個人使用的shell為zsh,因此以zsh的配置來說明。打開zsh的配置文件(默認為~/.zshrc),然后添加上面的代理配置即可,事例如下:
? temp tail ~/.zshrcexport FixVersion=0
export BuildNo=11
export SVN_REVISION=100
export https_proxy='http://proxy.com:8080';
export http_proxy='http://proxy.com:8080';
Android Studio 下的代理配置
Android開發(fā)中我們會用到兩種模式,一種是直接IDE編譯運行,一種是直接在命令行運行,兩種場景下的代理配置并不一致。其中在命令行下運行時的代理配置與shell下的一致,因此不再專門介紹,僅僅介紹IDE的環(huán)境變量配置。
Android studio提供了IDE全局的環(huán)境變量的配置模式,就在 Appearance & Behavior > System Settings > HTTP Proxy 中,由于這個配置是全局的,因此開發(fā)中并不是很方便,主要表現(xiàn)在:
- 不同的項目可能不一定需要配置代理,或者需要的代理并不一致
- 如果項目有多個開發(fā)者,每個開發(fā)者都需要配置一次
因此個人更多的都是直接修改項目相關的配置文件來設置項目相關的代理。具體的就是在項目的根目錄的gradle.properties中添加如下的配置:
systemProp.http.proxyHost='proxy.com'systemProp.http.proxyPort='8080'
# 過濾不使用代理的域名
systemProp.http.nonProxyHosts=*.bihe0832.com
systemProp.https.proxyHost='proxy.com'
systemProp.https.proxyPort='8080'
# 過濾不使用代理的域名
systemProp.https.nonProxyHosts=*.bihe0832.com
這里需要注意的是,很多android的maven依賴都是使用https的,因此不要僅僅配置http相關的代理,需要同時配置https的
pip 代理設置
正如前面提到的,在某些情況下會出現(xiàn)shell配置了代理,但是并沒有生效的情況。例如pip,這里介紹一下pip設置代理的方法,比如我們安裝Appium-Python-Client。
代理設置
如果在安裝時需要代理,只需要在命令參數(shù)中加上--proxy參數(shù),例如:
? temp pip3.7 install Appium-Python-Client --proxy http://127.0.0.1:8080如果在安裝時不需要代理,只需要在命令參數(shù)中去除--proxy參數(shù),例如:
? temp pip3.7 install Appium-Python-Client修改pip的鏡像源
由于國外官方pypi經(jīng)常被墻,所以我們最好是將自己使用的pip源更換一下。iMac下,修改 ~/.pip/pip.conf (沒有就創(chuàng)建一個)內(nèi)容如下:
[global]index-url = https://pypi.tuna.tsinghua.edu.cn/simple
gem 代理設置
正如前面提到的,在某些情況下會出現(xiàn)shell配置了代理,但是并沒有生效的情況。例如gem,這里介紹一下gem設置代理的方法,比如我們安裝github-pages。
代理設置
如果在安裝時需要代理,只需要在命令參數(shù)中加上--http-proxy參數(shù),例如:
? temp gem install --http-proxy http://proxy.com:8080 github-pages如果在安裝時不需要代理,只需要在命令參數(shù)中去除--http-proxy參數(shù),例如:
? temp gem install github-pages修改鏡像
除了通過配置代理來訪問資源外,我們還可以通過直接修改gem的鏡像源地址。這樣即使不用代理也可訪問。gem源的修改方法如下:
? temp gem source --add --remove具體示例如下:
? temp gem sources --add https://gems.ruby-china.org/ --remove https://rubygems.org/? temp gem sources -l
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/2.3.0/universal-darwin17/rbconfig.rb:214: warning: Insecure world writable dir /Users/hardyshi/lib/android-sdk in PATH, mode 040777
*** CURRENT SOURCES ***
https://gems.ruby-china.org
如果修改鏡像,建議只保留一個即可,其余的都刪除,然后根據(jù)剩余的鏡像確定是否使用代理,這樣會大大提升效率。你也可以直接修改~/.gemrc,添加鏡像源。示例如下:
? ~ cat ~/.gemrc---
:backtrace: false
:bulk_threshold: 1000
:sources:
- https://gems.ruby-china.com/
:update_sources: true
:verbose: true
本地安裝
當然,gem除了設置代理或者直接修改鏡像以外, 還可以直接本地安裝,比如我們要安裝 github-pages, 先到 https://gems.ruby-china.org 或者其余鏡像源把 ?github-pages 下載到本地, 然后在本地安裝:
? temp gem install --local ~/temp/github-pages-localname.gemnpm 代理設置
npm和gem一樣,也有兩種方法,切換鏡像或者設置代理,這里逐個介紹一下:
代理設置
如果在安裝時需要代理,只需安裝前配置中設置代理,安裝后再刪除即可。例如:
? temp npm config set proxy=http://proxy.com:8080? temp npm install --global vue-cli
如果在安裝后如果不需要代理,只需要配置中刪除代理即可:
? temp npm config delete proxy修改鏡像
修改指定路徑
除了通過配置代理來訪問資源外,npm也可以修改鏡像源地址。修改方法如下:
? temp npm config set registry < new registry url >具體示例如下:
? temp npm config set registry https://registry.npm.taobao.org擇優(yōu)修改路徑
當然你也可以選擇官方提供的工具來選擇最優(yōu)路徑:首先安裝npm registry的管理工具nrm:
? temp npm install -g nrm
npm WARN deprecated coffee-script@1.7.1: CoffeeScript on NPM has moved to "coffeescript" (no hyphen)
/usr/local/bin/nrm -> /usr/local/lib/node_modules/nrm/cli.js
/usr/local/lib
└── nrm@1.0.2只有就可以使用nrm來查看有哪些鏡像:
? temp nrm ls
* npm ---- https://registry.npmjs.org/
cnpm --- http://r.cnpmjs.org/
taobao - https://registry.npm.taobao.org/
nj ----- https://registry.nodejitsu.com/
rednpm - http://registry.mirror.cqupt.edu.cn/
npmMirror https://skimdb.npmjs.com/registry/
edunpm - http://registry.enpmjs.org/然后使用nrm和鏡像的別名就可以切換鏡像的地址:
? temp nrm use taobao
Registry has been set to: https://registry.npm.taobao.org/其實nrm還給我們提供了測速工具來測試當前網(wǎng)絡到所有鏡像地址的訪問耗時,我們可以結(jié)合測速結(jié)果選擇更優(yōu)的鏡像地址:
? temp nrm test
npm ---- 403ms
cnpm --- 219ms
* taobao - 350ms
nj ----- Fetch Error
rednpm - 115ms
npmMirror 1169ms
edunpm - 220ms
賬號內(nèi)容均來自個人博客,想了解更多資料或跳轉(zhuǎn)到文中鏈接,可以點擊
與50位技術(shù)專家面對面20年技術(shù)見證,附贈技術(shù)全景圖總結(jié)
以上是生活随笔為你收集整理的vue.config.js配置代理不生效_iMac各种代理设置方法汇总的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 边缘计算架构_边缘计算架构梳理
- 下一篇: mpvue微信小程序动画_mpvue微信