Proxy auto config
Для того, чтобы выйти за пределы “безопасного” интернета, иногда надо использовать прокси. И хочется это делать удобно. Для браузеров есть куча расширений, которые это вроде как предлагают, некоторые даже включают прокси только на заблокированные сайты. Однако эти расширения работают не очень качественно и/или запрашивают разрешения к очень многим вещам (например, почти все просят доступ ко всем данным всех сайтов).
Чтобы шапочка из фольги не жала, можно воспользоваться встроенными настройками браузера, чтобы он ходил на нужные сайты через прокси, а на остальные — без нее. Поможет нам в этом механизм Proxy auto config. Идея его заключается в том, что создается pac-файл, который по сути является скриптом на javascript, реализующим одну функцию: получить адрес прокси для url. Выглядит он примерно так:
function FindProxyForURL(url, host) {
host = host.toLowerCase();
if (shExpMatch(host, "*telegram.org")
|| dnsDomainIs(host, "t.me")
|| dnsDomainIs(host, "telegra.ph")
|| shExpMatch(host, "*media.tumblr.com")
|| dnsDomainIs(host, "httpbin.org")
){
return "SOCKS localhost:9050";
} else {
return "DIRECT";
}
}
Готовые можно найти в интернете. Протестировать самописное можно здесь. А дальше — прописываем в настройке браузера “Automatic proxy configuration URL” путь к файлу, например file:///home/ov7a/proxy_config.pac
.