Epäonnistunut kysely ei todista, että kohde on yksityisverkkosi ulkopuolella. Se todistaa, että tämä PAC-arviointi ei saanut tarvitsemaansa osoitetta.

Tämä ero on merkityksellinen, kun dnsResolve() syöttää isInNet()-sääntöä. Chromiumin PAC-toteutus palauttaa null, kun selvitys epäonnistuu. Älä rakenna virhehaaraa sen muistikuvan varaan, että tulos on aina tyhjä merkkijono.

function FindProxyForURL(url, host) {
    var address = dnsResolve(host);
    if (!address) {
        return "PROXY proxy.example:8080";
    }
    if (isInNet(address, "10.40.0.0", "255.255.0.0")) {
        return "DIRECT";
    }
    return "PROXY proxy.example:8080";
}

Tämä esimerkki lähettää selvittämättömät nimet välityspalvelimelle. Se on käytäntövalinta, ei yleinen turvallinen oletus. Siitä voi olla hyötyä, kun välityspalvelimella on selvityspalvelin tai verkkonäkymä, jota asiakkaalla ei ole. Paikallista selvitystä vaativa verkko tarvitsee toisenlaisen eksplisiittisen tuloksen.

Selvitä kerran ja käytä tulosta uudelleen. Näin päätös pysyy sidottuna yhteen arvoon eikä mahdollisesti hitaita apukutsuja toisteta.

Tarkista myös todellinen PAC-kuluttaja. Vanhat IPv4-aputoiminnot ja laajennetut IPv6-aputoiminnot ovat eri sopimuksilla. Yhden selaimen toteutuksella testattu sääntö ei todista tukea jokaisessa sovelluksessa, joka käyttää samaa PAC-URL-osoitetta.

Jos vaatimus on vain ohjata tunnettu yrityspääte, isäntänimen sääntö voi välttää kyselyn kokonaan. Turvaudu osoiteperusteiseen luokitteluun, kun osoite on tieto, jota käytäntö todella tarvitsee.

Aiheeseen liittyvät artikkelit