Глава 22. Условия исключений¶
Условия исключений используются в слое <Exception> для кастомизации страниц ошибок и уведомлений. Когда прокси генерирует страницу ошибки (блокировка политикой, таймаут подключения, ошибка DNS и т.д.), в контексте транзакции устанавливаются поля исключения. Условия этой главы позволяют проверять эти поля и применять различные шаблоны страниц в зависимости от причины ошибки.
В Redcoat при срабатывании deny в слое <Proxy> автоматически устанавливается exception.id=policy_denied, после чего оценивается слой <Exception>.
22.1. exception.id=¶
Проверяет идентификатор исключения. Идентификатор устанавливается прокси при генерации ошибки или действием exception() в других слоях.
Синтаксис:
где:
exception_name— строковый идентификатор исключения (например,policy_denied,timeout_error,dns_lookup_failed,connection_refused).
Слои и транзакции: Exception.
Пример:
<Exception>
; Кастомная страница для заблокированных политикой
exception.id=policy_denied exception(corporate_block_page)
; Кастомная страница для сетевых ошибок
exception.id=(timeout_error, connection_refused) exception(network_error_page)
Реализация: Полная. При срабатывании deny в слое <Proxy> автоматически устанавливается exception.id=policy_denied. При вызове exception(name) устанавливается заданный пользователем идентификатор. Слой <Exception> оценивается после блокировки в слое <Proxy>.
BlueCoat CPL Reference: exception.id= . Совместимость полная.
См. также: exception() (глава 36).