我的工作場所有一個相當複雜的PAC文件,用於確定哪些代理HTTP(S)流量應該用於訪問各種內部和外部網絡。對於Chrome,Safari等,這很好,但對命令行工具(curl
,大多數腳本語言HTTP庫)來說很糟糕。正常的解決方案是設置各種環境變量,如HTTP_PROXY
到proxy.example.com:8888
,但這不適用於PAC。相反,我們大多數人在localhost
上運行某種類型的PAC感知代理,並通過它發送所有內容。OSX:爲什麼curl不使用自動代理配置/ PAC?
我的問題是,爲什麼這是必需的第一個地方? OSX很好地評估PAC規則的自身連接,但curl
等不能? networksetup
給了我這樣的:
$ networksetup -listallhardwareports
Hardware Port: Wi-Fi
Device: en0
Ethernet Address: ...
$ networksetup -getproxyautodiscovery Wi-Fi
Auto Proxy Discovery: On
我把那意味着要通過什麼應該en0
有代理服務器自動發現。那是錯的嗎?代理自動發現和自動配置是否發生在只能通過Apple API(瀏覽器等使用)訪問的更高級別上? (如果是的話,我怎麼能訪問它們?)
我不能告訴你爲什麼功能是你描述的方式(這一直是這樣的看似多年)。有一種方法可以讓[腳本](https://github.com/macmule/setAutomaticProxyConfigurationURL)完成所有繁重的工作,但是可以與終端等一起使用,以便與pac文件一起使用。有一個問題(https://github.com/macmule/setAutomaticProxyConfigurationURL/issues/1),您可能需要先解決它與最新的OS X兼容的問題。 –
@AndrewO,我們有同樣的問題。你可以在你使用的localhost解決方案上的PAC感知代理上分享一些更具體的內容嗎?我搜索了一些OS X代理應用程序,但一直沒能找到PAC感知的應用程序。 – tleish