Действие JUMP

<< Кликните, чтобы показать Содержание >>

Руководство Администратора | CHM EPUB PDF A4/Letter   

Действие JUMP

Продолжить обработку HTTP-объекта в другой таблице.

Описание

Это действие продолжает обработку HTTP-объекта в другой таблице.

Формат

<action name="jump" value="<table name>" />

Атрибут "name":

В атрибуте "name" укажите имя действия: name="jump".

Атрибут "value":

В атрибуте value="..." укажите имя таблицы, в которую необходимо перейти для дальнейшей обработки HTTP-объекта.

Следует помнить, что переход в таблицу "main" запрещён для исключения зацикливания. Также запрещены переходы, которые могут привести к явной или неявной цикличности.

Пример:

GET-запросы передаются на обработку в таблицу get-process, обрабатываются в ней (ACCEPT для запросов на win.mail.ru), затем возврат в таблицу "main" для дальнейшей обработки.

<?xml version="1.0" encoding="utf-8"?>

<filter name="HTTP filter" version="1.0">

  <comment>HTTP filter.</comment>

  <table name="main">

    <rule enabled="1">

      <comment>Processing of GET requests is passed to the "get-process" table.</comment>

      <match>

        <c name="method" value="GET"/>

      </match>

      <action name="jump" value="get-process"/>

    </rule>

    <rule enabled="1">

      <action name="drop" />

    </rule>

  </table>

 

  <table name="get-process">

    <comment>GET requests are processed in the table get-process.</comment>

    <rule enabled="1">

      <comment>ACCEPT for requests for win.mail.ru.</comment>

      <match>

        <c name="req-header"

           headername="Host"

           op="eq"

           value="win.mail.ru" />

      </match>

      <action name="accept" />

    </rule>

    <rule enabled="1">

      <comment>Return to "main" table for further processing.</comment>

      <action name="return" />

    </rule>

  </table>

</filter>