Files
proxy/proxy.pac
2025-01-31 15:30:30 +03:00

54 lines
2.1 KiB
JavaScript

function FindProxyForURL(url, host) {
var proxy = "PROXY proxy.vm:8118";
var proxyDomains = {
"linkedin.com": 1,
"rutracker.org": 1, "*.rutracker.*": 1,
"2ip.ru": 1,
"kinozal.tv": 1, "*.kinozal.tv": 1,
"ntc.party": 1,
"instagram.com": 1, "*.instagram.com": 1, "*.cdninstagram.com": 1,
"chatgpt.com": 1, "openai.com": 1, "*.openai.com": 1, "*.chatgpt.com": 1,
"digitalocean.com": 1, "*.digitalocean.com": 1,
"cisco.com": 1, "*.cisco.com": 1,
"medium.com": 1, "*.medium.com": 1,
"homarr.dev": 1, "*.homarr.dev": 1,
"netgate.com": 1, "*.netgate.com": 1,
"boostymark.com": 1, "*.boostymark.com": 1,
"discord.com": 1, "*.discord.com": 1, "discord.gg": 1, "*.discord.gg": 1,
"notepad-plus-plus.org": 1, "*.notepad-plus-plus.org": 1,
"clickhouse.com": 1, "*.clickhouse.com": 1,
"hashicorp.com": 1, "*.hashicorp.com": 1,
"vagrantup.com": 1, "*.vagrantup.com": 1,
"vagrantcloud.com": 1, "*.vagrantcloud.com": 1,
"turnkeylinux.org": 1, "*.turnkeylinux.org": 1,
"habr.com": 1, "*.habr.com": 1,
"giters.com": 1, "*.giters.com": 1,
"imdb.com": 1, "*.imdb.com": 1,
"themoviedb.org": 1, "*.themoviedb.org": 1,
"intel.com": 1, "*.intel.com": 1,
"terraform.io": 1, "*.terraform.io": 1
};
var googleDomains = [
"youtube.com", "*.youtube.com", "*.youtu.be", "youtu.be",
"*.ytimg.com", "*.ggpht.com", "*.googleusercontent.com",
"*.googlevideo.com", "google.com", "*.google.com",
"*.yt.be", "yt.be", "*.l.google.com",
"jnn-pa.googleapis.com", "l.google.com"
];
// Check if the host matches any proxy domain
if (proxyDomains[host] || googleDomains.some(pattern => shExpMatch(host, pattern))) {
return proxy;
}
// Direct connection for specific Google services
if (shExpMatch(host, "mail.google.com") || shExpMatch(host, "meet.google.com")) {
return "DIRECT";
}
// Default: no proxy
return "DIRECT";
}