การค้นหาที่ล้มเหลวไม่ได้พิสูจน์ว่าปลายทางอยู่นอกรีโคว์ส่วนตัวของคุณ แต่พิสูจน์ว่าการประเมิน PAC ครั้งนี้ไม่ได้รับที่อยู่ที่ต้องการ

ความแตกต่างนี้สำคัญเมื่อ dnsResolve() ป้อนกฎ isInNet() การทำงาน PAC ของ Chromium จะคืนค่า null เมื่อการแปลงไม่สำเร็จ อย่าสร้างกิ่งความล้มเหลวจากความจำที่ว่าผลลัพธ์เป็นสตริงว่างเสมอ

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";
}

ตัวอย่างนี้ส่งชื่อที่แปลงไม่ได้ไปยังพร็อกซี นี่เป็นการเลือกนโยบาย ไม่ใช่ค่าเริ่มต้นที่ปลอดภัยสากล จะเป็นประโยชน์เมื่อพร็อกซีมีตัวแปลงหรือมุมมองเครือข่ายที่ไคลเอนต์ไม่มี เครือข่ายที่ต้องการการแปลงในเครื่องต้องได้ผลลัพธ์ที่ชัดเจนอีกแบบ

แปลงเพียงครั้งเดียวแล้วใช้ผลลัพธ์ซ้ำ วิธีนี้ผูกการตัดสินใจกับค่าเดียวและหลีกเลี่ยงการเรียกตัวช่วยที่อาจช้าซ้ำ

ตรวจสอบผู้ใช้ PAC จริงด้วย ตัวช่วย IPv4 แบบเก่าและตัวช่วย IPv6 แบบขยายมีสัญญาที่ต่างกัน กฎที่ทดสอบกับการทำงานของเบราว์เซอร์เดียวไม่ได้ยืนยันการรองรับในทุกแอปพลิเคชันที่ใช้ PAC URL เดียวกัน

หากความต้องการเพียงแค่กำหนดเส้นทางคำต่อท้ายบริษัทที่รู้จัก กฎชื่อโฮสต์อาจหลีกเลี่ยงการค้นหาได้ทั้งหมด ใช้การจำแนกตามที่อยู่เมื่อที่อยู่เป็นข้อมูลที่นโยบายต้องการจริง ๆ

บทความที่เกี่ยวข้อง