Я хочу применить настройки прокси-сервера только к определенному хосту (например, www.apple.com) в Mac OS X. Как я могу это сделать?
В Системных настройках есть только опции для обхода настроек прокси для определенных хостов.
Вы можете использовать следующий proxy.pac
файл для отправки всего трафика на apple.com через прокси 1.2.3.4, при этом отправляя его напрямую на все остальные узлы:
function FindProxyForURL(url, host) {
PROXY = "PROXY 1.2.3.4"
// Apple.com via proxy
if (shExpMatch(host,"*.apple.com")) {
return PROXY;
}
// Everything else directly!
return "DIRECT";
}
proxy.pac
(или любое другое имя) на веб-сервере. Это может быть локальный веб-сервер ( http: //localhost/proxy.pac ). Это требуется с OSX Lion .System Preferences
.Network
.Advanced...
кнопку.Proxies
вкладку[x] Automatic Proxy-Configuration
.URL:
поле введите в URL на файл , который вы создали в шаге 1., например: http://localhost/proxy.pac
. (примечание: локальные пути не будут работать в современном OSX)Save
иApply
Вуаля! Ваша собственная прокси-конфигурация
Для получения дополнительной информации о формате proxy.pac
файла посмотрите http://en.wikipedia.org/wiki/Proxy_Auto-Config в качестве отправной точки.
На самом деле вы можете использовать file:///path/to/file
схему для URL, вместо того чтобы полагаться на веб-сервер.
Например:
file:///Users/youruser/var/proxy/proxy.pac
'PROXY ...'
без проверки домена для подтверждения.proxy.pac
перечитывается при переключении Wi-Fi.Добавление к ответу @ heiglandreas ...
Решение @ jnbek не работало на Mac OSX для меня, и я искал простое решение.
Итак, я создал новую папку и скопировал туда файл pac. Затем я запустил простой веб-сервер на OSX через порт 80 из этой папки.
Просто зайдите в папку и выполните эту команду. Пожалуйста, измените порт с 80 на что-то другое, если он уже занят.
python -m SimpleHTTPServer 80
Теперь я легко могу получить файл proxy.pac
http://localhost/proxy.pac
. Или, для различного использования порта:http://localhost:PORT/proxy.pac
.источник