Un script PAC recibe o nome de host da URL. dashboard non se converte automaticamente en dashboard.example.internal antes de comparar:

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

Usa un punto final HTTP real no canto do enderezo de documentación; a lista de proxies HTTP ofrece candidatos para probas cara a un destino público onde esa ruta estea permitida. Neste script, o nome curto devolve deliberadamente DIRECT; o nome totalmente cualificado chega á rama do proxy. «Plain hostname» significa unha grafía sen punto, non a conclusión de que o host estea nunha rede local de confianza.

Se a política desexada é un único dominio interno, compara con ese dominio en vez de con todos os nomes curtos. dnsDomainIs e shExpMatch teñen entradas e semántica de patrón diferentes. Unha comprobación de sufixo para .example.internal non inclúe a raíz exacta example.internal; inclúe ese caso explicitamente cando así o queiras. Un patrón de estilo shell non é unha subrede IP nin unha expresión regular.

Compara o resultado do script para o nome curto, o nome totalmente cualificado, un host público non relacionado e calquera raíz de dominio pretendida. Isto proba a selección de regras sen conectar co proxy. Inspecciona a primeira regra que devolve cando unha rama DIRECT ampla impide probar un punto final que doutro xeito sería accesible.

Usa unha comparación de nomes cando exprese a política; os axudantes DNS engaden as súas propias consultas e atrasos. Mantén tamén o bypass local implícito do navegador separado do script. Unha comprobación de localhost non pode substituír a grafía real do destino público ou interno.

Artigos relacionados