<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://devel.a0fs.ru/lib/exe/css.php?s=feed" type="text/css"?>
<rss version="2.0">
    <channel xmlns:g="http://base.google.com/ns/1.0">
        <title>СДоРаз</title>
        <description></description>
        <link>https://devel.a0fs.ru/</link>
        <lastBuildDate>Sat, 30 May 2026 03:30:18 +0000</lastBuildDate>
        <generator>FeedCreator 1.8</generator>
        <image>
            <url>https://devel.a0fs.ru/_media/wiki/logo.png</url>
            <title>СДоРаз</title>
            <link>https://devel.a0fs.ru/</link>
        </image>
        <item>
            <title>authelia_helper</title>
            <link>https://devel.a0fs.ru/lib.py/aw_web_tools/authelia_helper</link>
            <description>&lt;table&gt;&lt;tr&gt;&lt;th colspan=&quot;2&quot; width=&quot;50%&quot;&gt;09.11.2024 17:09&lt;/th&gt;&lt;th colspan=&quot;2&quot; width=&quot;50%&quot;&gt;текущий&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Строка 38:&lt;/td&gt;
&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Строка 38:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;| &amp;#039;&amp;#039;header_email&amp;#039;&amp;#039; | &amp;#039;&amp;#039;str&amp;#039;&amp;#039; | &amp;#039;&amp;#039;Remote-Email&amp;#039;&amp;#039; | Имя заголовка c e-mail пользователя |&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;| &amp;#039;&amp;#039;header_email&amp;#039;&amp;#039; | &amp;#039;&amp;#039;str&amp;#039;&amp;#039; | &amp;#039;&amp;#039;Remote-Email&amp;#039;&amp;#039; | Имя заголовка c e-mail пользователя |&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;| &amp;#039;&amp;#039;header_name&amp;#039;&amp;#039; | &amp;#039;&amp;#039;str&amp;#039;&amp;#039; | &amp;#039;&amp;#039;Remote-Name&amp;#039;&amp;#039; | Имя заголовка с именем пользователя |&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;| &amp;#039;&amp;#039;header_name&amp;#039;&amp;#039; | &amp;#039;&amp;#039;str&amp;#039;&amp;#039; | &amp;#039;&amp;#039;Remote-Name&amp;#039;&amp;#039; | Имя заголовка с именем пользователя |&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;| &amp;#039;&amp;#039;fake_auth&amp;#039;&amp;#039; | &amp;#039;&amp;#039;bool&amp;#039;&amp;#039; | &amp;#039;&amp;#039;False&amp;#039;&amp;#039; | Включение режима подставной авторизации |&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;**Режим подставной авторизации**, который включается параметром &amp;#039;&amp;#039;fake_auth&amp;#039;&amp;#039;, создан для выполнения предварительной разработки приложения в целом (на этапе преальфа). На данном этапе АРМ разработчика может быть не оснащена ПО &amp;#039;&amp;#039;Authelia&amp;#039;&amp;#039;, и во избежание дополнительных не контролируемых решений конкретного программиста данной проблемы с возможным появлением уязвимостей, и добавлен этот режим. В данном режиме объект пользователя имеет предопределённое значение:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&amp;#160; * &amp;#039;&amp;#039;uname&amp;#039;&amp;#039;: &amp;#039;&amp;#039;//__UNK__//&amp;#039;&amp;#039;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&amp;#160; * &amp;#039;&amp;#039;name&amp;#039;&amp;#039;: &amp;#039;&amp;#039;//John Doe//&amp;#039;&amp;#039;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&amp;#160; * &amp;#039;&amp;#039;email&amp;#039;&amp;#039;: &amp;#039;&amp;#039;//devnull@localhost.localdomain//&amp;#039;&amp;#039;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;Группы в этом режиме не назначаются и являются пустым массивом.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</description>
            <author>awgur@undisclosed.example.com (awgur)</author>
            <pubDate>Wed, 15 Oct 2025 14:29:09 +0000</pubDate>
        </item>
        <item>
            <title>root</title>
            <link>https://devel.a0fs.ru/zabbix/root</link>
            <description>&lt;table&gt;&lt;tr&gt;&lt;th colspan=&quot;2&quot; width=&quot;50%&quot;&gt;23.12.2024 23:19&lt;/th&gt;&lt;th colspan=&quot;2&quot; width=&quot;50%&quot;&gt;текущий&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Строка 1:&lt;/td&gt;
&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Строка 1:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;^ Наименование&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; ^ Описание&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;^&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;^ Наименование&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; ^ Описание&amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160; &amp;#160;^&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;&lt;strong class=&quot;diff-mark&quot;&gt;| [[.:freebsd.common|FreeBSD общий]]&amp;#160; | Дополнительные элементы для мониторинга &amp;#039;&amp;#039;FreeBSD&amp;#039;&amp;#039;&amp;#160; | &lt;/strong&gt;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;| [[.:freebsd.common2|FreeBSD общий]] | Дополнительные элементы для мониторинга &amp;#039;&amp;#039;FreeBSD&amp;#039;&amp;#039;, несколько переработанные |&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;| [[.:freebsd.common2|FreeBSD общий&lt;strong class=&quot;diff-mark&quot;&gt;, второе поколение&lt;/strong&gt;]] | Дополнительные элементы для мониторинга &amp;#039;&amp;#039;FreeBSD&amp;#039;&amp;#039;, несколько переработанные |&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;| [[https://s3.fs.a0fs.ru/dist/config/zabbix/www-angie.yaml|Шаблон Angie]] | Предельно грубая адаптация шаблона под Nginx на шаблон под [[https://angie.software/|Angie]] |&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;| [[https://s3.fs.a0fs.ru/dist/config/zabbix/www-angie.yaml|Шаблон Angie]] | Предельно грубая адаптация шаблона под Nginx на шаблон под [[https://angie.software/|Angie]] |&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</description>
            <author>awgur@undisclosed.example.com (awgur)</author>
            <pubDate>Sun, 27 Jul 2025 07:04:03 +0000</pubDate>
        </item>
        <item>
            <title>btle_tools</title>
            <link>https://devel.a0fs.ru/lib.py/aw_web_tools/btle_tools</link>
            <description>&lt;table&gt;&lt;tr&gt;&lt;th colspan=&quot;2&quot; width=&quot;50%&quot;&gt;02.11.2024 20:08&lt;/th&gt;&lt;th colspan=&quot;2&quot; width=&quot;50%&quot;&gt;текущий&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Строка 16:&lt;/td&gt;
&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Строка 16:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;Получение реального адреса клиента.&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;Получение реального адреса клиента.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;Пытается получить адрес клиента из специальной переменной реверс-прокси. В случае неудачи, берёт IP узла, откуда пришёл запрос.&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;Пытается получить адрес клиента из специальной переменной реверс-прокси&amp;#160;&lt;strong class=&quot;diff-mark&quot;&gt;&amp;#039;&amp;#039;X-Real-IP&amp;#039;&amp;#039;&lt;/strong&gt;. В случае неудачи, берёт IP узла, откуда пришёл запрос.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;**Проверки на установку IP доверенным источником не производится.** Поскольку приложения не выставляются наружу без прикрытия &amp;#039;&amp;#039;nginx&amp;#039;&amp;#039;, который можно соответственно настроить&lt;strong class=&quot;diff-mark&quot;&gt;, э&lt;/strong&gt;то не считается проблемой.&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;**Проверки на установку IP доверенным источником не производится.** Поскольку приложения не выставляются наружу без прикрытия &amp;#039;&amp;#039;nginx&amp;#039;&amp;#039;, который можно соответственно настроить&lt;strong class=&quot;diff-mark&quot;&gt;. Э&lt;/strong&gt;то не считается проблемой.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;lt;code&amp;gt;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;lt;code&amp;gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Строка 162:&lt;/td&gt;
&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Строка 162:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;lt;/code&amp;gt;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;lt;/code&amp;gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;**Возвращает:** Строку, которую можно использовать для инициализации [[lib.py:aw_log:api|объекта лога]]&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;**Возвращает:** Строку, которую можно использовать для инициализации [[lib.py:aw_log:api|объекта лога]]&lt;strong class=&quot;diff-mark&quot;&gt;. Строка представляет собой: &lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;strong class=&quot;diff-mark&quot;&gt;&amp;lt;code bash&amp;gt; &lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;strong class=&quot;diff-mark&quot;&gt;${USER}[${IP} | ${REQ_ID} | ${CONN_ID}] - ${URL} &lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;strong class=&quot;diff-mark&quot;&gt;&amp;lt;/code&amp;gt; &lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;strong class=&quot;diff-mark&quot;&gt;Где: &lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;strong class=&quot;diff-mark&quot;&gt;&amp;#160; * &amp;#039;&amp;#039;${USER}&amp;#039;&amp;#039; - Переданное имя пользователя или &amp;#039;&amp;#039;_NOUID_&amp;#039;&amp;#039; если ничего передано не было. &lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;strong class=&quot;diff-mark&quot;&gt;&amp;#160; * &amp;#039;&amp;#039;${IP}&amp;#039;&amp;#039; - Результат работы функции [[#get_client_ip|get_client_ip()]]. &lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;strong class=&quot;diff-mark&quot;&gt;&amp;#160; * &amp;#039;&amp;#039;${REQ_ID}&amp;#039;&amp;#039; - Значение заголовка &amp;#039;&amp;#039;REQ_ID_HEADER&amp;#039;&amp;#039;, если он имеется. В противном случае ничего не подставляется и не выводится разделитель. &lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;strong class=&quot;diff-mark&quot;&gt;&amp;#160; * &amp;#039;&amp;#039;${CONN_ID}&amp;#039;&amp;#039; - Значение заголовка &amp;#039;&amp;#039;CONN_ID_HEADER&amp;#039;&amp;#039;, если он имеется. В противном случае ничего не подставляется и не выводится разделитель. &lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&lt;strong class=&quot;diff-mark&quot;&gt;&amp;#160; * &amp;#039;&amp;#039;${URL}&amp;#039;&amp;#039; - Путь переданный в запросе. &lt;/strong&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</description>
            <author>awgur@undisclosed.example.com (awgur)</author>
            <pubDate>Sat, 12 Jul 2025 12:17:26 +0000</pubDate>
        </item>
        <item>
            <title>simple_template_helper</title>
            <link>https://devel.a0fs.ru/lib.py/aw_web_tools/simple_template_helper</link>
            <description>&lt;table&gt;&lt;tr&gt;&lt;th colspan=&quot;2&quot; width=&quot;50%&quot;&gt;12.07.2025 12:23&lt;/th&gt;&lt;th colspan=&quot;2&quot; width=&quot;50%&quot;&gt;текущий&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Строка 45:&lt;/td&gt;
&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Строка 45:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;Вместо объекта создаётся фабрика объектов, при каждом вызове которой инициализируется новый объект.&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;Вместо объекта создаётся фабрика объектов, при каждом вызове которой инициализируется новый объект.&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;Помогает в работе над шаблонами. В частности препятствует кешированию и способствует перечитыванию файла с шаблоном на каждом вызове данного шаблона в коде&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;Помогает в работе над шаблонами. В частности&lt;strong class=&quot;diff-mark&quot;&gt;,&amp;#160;&lt;/strong&gt;препятствует кешированию и способствует перечитыванию файла с шаблоном на каждом вызове данного шаблона в коде&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;^ Параметр ^ Тип ^ Описание ^&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;^ Параметр ^ Тип ^ Описание ^&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</description>
            <author>awgur@undisclosed.example.com (awgur)</author>
            <pubDate>Sat, 12 Jul 2025 09:24:09 +0000</pubDate>
        </item>
        <item>
            <title>freebsd.common2</title>
            <link>https://devel.a0fs.ru/zabbix/freebsd.common2</link>
            <description>&lt;table&gt;&lt;tr&gt;&lt;th colspan=&quot;2&quot; width=&quot;50%&quot;&gt;24.01.2025 22:04&lt;/th&gt;&lt;th colspan=&quot;2&quot; width=&quot;50%&quot;&gt;текущий&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Строка 13:&lt;/td&gt;
&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Строка 13:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;lt;/code&amp;gt;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;lt;/code&amp;gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;#160; - Активировать конфигурацию экземпляра: &amp;lt;code bash&amp;gt;cp /opt/aw.fbsd-mon-helper/config.dist.sh /opt/aw.fbsd-mon-helper/config.sh&amp;lt;/code&amp;gt;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;#160; - Активировать конфигурацию экземпляра: &amp;lt;code bash&amp;gt;cp /opt/aw.fbsd-mon-helper/config.dist.sh /opt/aw.fbsd-mon-helper/config.sh&amp;lt;/code&amp;gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;&amp;#160; - Прописать в &amp;#039;&amp;#039;crontab(5)&amp;#039;&amp;#039; запуск инструмента: &amp;lt;code bash&amp;gt;&lt;strong class=&quot;diff-mark&quot;&gt;${Случайное число от 0 до 59}&amp;#160;&amp;#160;&lt;/strong&gt;*/&lt;strong class=&quot;diff-mark&quot;&gt;2&amp;#160;&lt;/strong&gt;&amp;#160; *&amp;#160; &amp;#160; *&amp;#160; &amp;#160; &amp;#160;*&amp;#160; /bin/sh /opt/aw.fbsd-mon-helper/bin/lounch.sh&amp;lt;/code&amp;gt; Естественно вместо &amp;#039;&amp;#039;${Случайное число от 0 до 59}&amp;#039;&amp;#039; требуется придумать число&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;&amp;#160; - Прописать в &amp;#039;&amp;#039;crontab(5)&amp;#039;&amp;#039; запуск инструмента: &amp;lt;code bash&amp;gt;*/&lt;strong class=&quot;diff-mark&quot;&gt;15&amp;#160; *&amp;#160;&lt;/strong&gt;&amp;#160; *&amp;#160; &amp;#160; *&amp;#160; &amp;#160; &amp;#160;*&amp;#160; /bin/sh /opt/aw.fbsd-mon-helper/bin/lounch.sh&amp;lt;/code&amp;gt; Естественно вместо &amp;#039;&amp;#039;${Случайное число от 0 до 59}&amp;#039;&amp;#039; требуется придумать число&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;#160; - Загрузить конфигурацию &amp;#039;&amp;#039;syslog&amp;#039;&amp;#039;: &amp;lt;code bash&amp;gt;fetch -ao \&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;#160; - Загрузить конфигурацию &amp;#039;&amp;#039;syslog&amp;#039;&amp;#039;: &amp;lt;code bash&amp;gt;fetch -ao \&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;#160; /etc/syslog.d/warnmsg.conf \&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&amp;#160; /etc/syslog.d/warnmsg.conf \&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</description>
            <author>awgur@undisclosed.example.com (awgur)</author>
            <pubDate>Sun, 01 Jun 2025 09:16:40 +0000</pubDate>
        </item>
        <item>
            <title>root</title>
            <link>https://devel.a0fs.ru/lib.py/aw_web_tools/root</link>
            <description>&lt;table&gt;&lt;tr&gt;&lt;th colspan=&quot;2&quot; width=&quot;50%&quot;&gt;02.03.2025 15:03&lt;/th&gt;&lt;th colspan=&quot;2&quot; width=&quot;50%&quot;&gt;текущий&lt;/th&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Строка 4:&lt;/td&gt;
&lt;td class=&quot;diff-blockheader&quot; colspan=&quot;2&quot;&gt;Строка 4:&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;-&lt;/td&gt;&lt;td class=&quot;diff-deletedline&quot;&gt;======&amp;#160;&lt;strong class=&quot;diff-mark&quot;&gt;Раз&lt;/strong&gt;д&lt;strong class=&quot;diff-mark&quot;&gt;е&lt;/strong&gt;л&lt;strong class=&quot;diff-mark&quot;&gt;ы&amp;#160;&lt;/strong&gt;======&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;+&lt;/td&gt;&lt;td class=&quot;diff-addedline&quot;&gt;======&amp;#160;&lt;strong class=&quot;diff-mark&quot;&gt;По&lt;/strong&gt;д&lt;strong class=&quot;diff-mark&quot;&gt;моду&lt;/strong&gt;л&lt;strong class=&quot;diff-mark&quot;&gt;и&amp;#160;&lt;/strong&gt;======&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;^ Название ^ Строка импорта ^&lt;/td&gt;&lt;td class=&quot;diff-lineheader&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class=&quot;diff-context&quot;&gt;^ Название ^ Строка импорта ^&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</description>
            <author>awgur@undisclosed.example.com (awgur)</author>
            <pubDate>Sun, 02 Mar 2025 13:38:39 +0000</pubDate>
        </item>
    </channel>
</rss>
