Назад | Перейти на главную страницу

Настройте прокси-сервер Squid с помощью файла PAC

Итак, у меня установлен прокси-сервер squid и работает на моем экземпляре ec2. Моя задача состоит в том, чтобы любой клиент ПК был подключен к прокси только через прокси при доступе к определенным сайтам и будет использовать обычное соединение Wi-Fi для всего остального. Что-то вроде белого списка или использовать прокси только для определенных сайтов и ничего больше.

Возможно ли такое случайно?

любая помощь или руководство приветствуются.

Ура!

Да, это типичное использование файла PAC, проверьте приведенный ниже пример кода:

function FindProxyForURL(url, host) {

// If the hostname matches, send to the proxy.
    if (dnsDomainIs(host, "exampldomain.com") ||
        shExpMatch(host, "(*.abcdomain.com|abcdomain.com)"))
        return "PROXY 1.2.3.4:8080";


// DEFAULT RULE: All other traffic, send direct.
    return "DIRECT";

}

dnsDomainIs и shExpMatch - две функции проверки доменного имени на совпадение, dnsDomainIs оценивает имена хостов и возвращает истину, если имена хостов совпадают. Используется в основном для сопоставления и исключения отдельных имен хостов. shExpMatch будет пытаться сопоставить имя хоста или URL-адрес с указанным выражением оболочки и вернет true, если найдено.

Если вы хотите, чтобы пользователь попытался подключиться напрямую, если он не может связаться с прокси-сервером, вам нужно будет изменить эту строку:

return "PROXY 1.2.3.4:8080";

Быть:

return "PROXY 1.2.3.4:8080; DIRECT";