У PAC shExpMatch використовує шаблони в стилі оболонки. Для піддоменів example.com:

if (shExpMatch(host, "*.example.com")) {
    return "PROXY proxy.example:8080";
}

У цих значеннях повернення використовуйте кінцеві точки HTTP, вибрані політикою; список HTTP-проксі надає кандидатів для дозволених публічних маршрутів. Зірочка відповідає послідовності символів. Це не оператор повторення регулярного виразу, тому схожий на регулярний вираз .*example.com змінює значення.

Уключайте точне ім'я батьківського домену явно, якщо воно належить політиці:

if (host === "example.com" || shExpMatch(host, "*.example.com")) {
    return "PROXY proxy.example:8080";
}

Використання *example.com натомість приймало б також імена, що закінчуються цими літерами без розділової крапки. Це розширює множину за межі передбаченого кордону домену.

Портативна основа шаблонів PAC включає * і ?; класи символів різняться залежно від реалізації. Регулярний вираз JavaScript натомість використовує test() і власні правила прив'язки та екранування.

Зіставляйте з передбаченим уводом. host — це ім'я хоста, тоді як url включає схему і міг бути очищений. Правило домену не повинно випадково залежати від шляху, який браузер ніколи не надає.

Схожі статті