Skript PAC obdrží jméno hostitele z URL. dashboard se před porovnáním automaticky nestane dashboard.example.internal:

function FindProxyForURL(url, host) {
  if (isPlainHostName(host)) {
    return "DIRECT";
  }
  return "PROXY 203.0.113.10:8080";
}

Použijte skutečný koncový bod HTTP místo dokumentační adresy; seznam HTTP proxy nabízí kandidáty pro testy veřejných cílů tam, kde je tato cesta povolena. V tomto skriptu krátké jméno záměrně vrací DIRECT; plně kvalifikované jméno se dostane do větve proxy. „Plain hostname“ znamená zápis bez tečky, nikoli zjištění, že hostitel je v důvěryhodné místní síti.

Pokud je požadovanou politikou jedna interní doména, porovnávejte tuto doménu, nikoli každé krátké jméno. dnsDomainIs a shExpMatch mají různé vstupy a sémantiku vzorů. Kontrola přípony pro .example.internal nezahrnuje přesný kořen example.internal; tento případ výslovně zahrňte, když je to zamýšleno. Vzor ve stylu shellu není podsíť IP ani regulární výraz.

Porovnejte výsledek skriptu pro krátké jméno, plně kvalifikované jméno, nesouvisejícího veřejného hostitele a jakýkoli zamýšlený kořen domény. Tím se testuje volba pravidla bez připojení k proxy. Prohlédněte první pravidlo, které vrací, když široká větev DIRECT brání vyzkoušení jinak dostupného koncového bodu.

Použijte porovnání jmen, když vyjadřuje politiku; pomocné funkce DNS přidávají vlastní dotazy a zpoždění. Implicitní místní obejití prohlížeče držte také oddělené od skriptu. Kontrola localhostu nemůže nahradit skutečný zápis veřejného nebo interního cíle.

Související články