Чи може файл PAC використовувати navigator.appName для визначення браузера?
Розв'язувач PAC надає помічники маршрутизації, а не середовище сторінки браузера. Визначення браузера через navigator, document і DOM не є переносними вхідними даними PAC.
Скрипт PAC використовує синтаксис JavaScript. Це не означає, що він виконується всередині веб-сторінки.
Розв'язувач проксі надає середовище виконання з вхідними даними маршрутизації та допоміжними функціями. Він не гарантує window, document, DOM або navigator.appName сторінки. Тому фрагмент визначення браузера, скопійований зі сторінки, може не спрацювати ще до того, як ваше правило проксі щось поверне.
Будуйте маршрут на підтримуваній інформації, наприклад на переданих URL та імені хоста, або на задокументованій допоміжній функції, коли цього потребує мережева політика. Не виводьте версію браузера з випадкових особливостей рушія JavaScript і не дозволяйте цьому висновку визначати вихід.
Якщо різним керованим клієнтам справді потрібні різні політики, доставляйте потрібну конфігурацію через їхню систему керування. Корпоративна політика Firefox — один із варіантів доставки для керованих інсталяцій Firefox. Це зрозуміліше, ніж вбудовувати незадокументовану головоломку визначення браузера в спільний файл PAC.
Скрипт, який успішно розбирається як звичайний JavaScript, не обов'язково є підтримуваним скриптом PAC. Перевіряйте задокументоване середовище розв'язувача, а не лише синтаксис мови.