BB-код — разметка постов на форумах
Что это
BB-код (Bulletin Board Code) — простая разметка для сообщений на форумах и в комментариях старых CMS. Автор пишет теги в квадратных скобках; сервер (или движок форума) превращает их в HTML перед отдачей страницы браузеру.
Культурный контекст — Форумная культура Рунета. Краткая карточка термина — глоссарий: BB-код.
Как устроено
| Этап | Кто делает | Результат |
|---|---|---|
| 1 | Пользователь в форме поста | Текст с [b], [url], [quote] |
| 2 | Backend форума (PHP, плагин) | Парсинг тегов → безопасный HTML |
| 3 | Браузер | Отображение жирного, ссылок, цитат |
Цепочка та же, что у любой динамической страницы: запрос → обработка на сервере → HTML в ответе. База — клиент и сервер, HTTP.
В современных системах (GitHub, Discord, эта энциклопедия на Docusaurus) чаще Markdown: синтаксис другой, идея та же — отделить разметку от голого текста.
Основные теги
| Тег | Назначение | Пример |
|---|---|---|
[b]…[/b] | Жирный | [b]важно[/b] |
[i]…[/i] | Курсив | [i]термин[/i] |
[u]…[/u] | Подчёркивание | редко в новых темах |
[url=…]…[/url] | Ссылка | [url=https://example.com]пример[/url] |
[img]…[/img] | Картинка по URL | только доверенные домены |
[quote]…[/quote] | Цитата поста | ответ в треде |
[code]…[/code] | Моноширинный блок | фрагмент лога или кода |
[list][*]…[/list] | Список | маркированный перечень |
Точный набор зависит от движка — phpBB, vBulletin, IPB и др. добавляли свои теги ([spoiler], [color]).
Пример поста (как видит автор):
[quote]Падает при сохранении[/quote]
Проверил trace-id в логах:
[code]ERROR 500 /api/save[/code]
Статья: [url=https://example.com/docs]документация[/url]
BB-код и Markdown
| BB-код | Markdown | |
|---|---|---|
| Где | Классические форумы, старые порталы | README, wiki, чаты, блоги |
| Ссылки | [url=…]текст[/url] | [текст](url) |
| Цитата | [quote] | > в начале строки |
| Код | [code] | обратные кавычки ` или блок ``` |
При переходе с форума на корпоративный wiki привычные теги нужно переписать, а не копировать один в один.
Безопасность
Разметка на сервере — место, где исторически появлялись XSS-дыры: если парсер BB-кода пропускал сырой <script> или ломал экранирование в [url], в чужой браузер попадал вредоносный JavaScript. На форумах это чаще всего Stored XSS (сохранённый) — вредоносный пост остаётся в базе и срабатывает у каждого, кто открывает тему (три типа XSS).
Современные движки:
- белый список тегов (всё остальное вырезается);
- экранирование атрибутов в ссылках и картинках;
- запрет
javascript:в URL.
Для разработчика урок тот же, что в основах ИБ: никогда не вставлять пользовательский HTML без санитизации.
Тег [img] подгружает ресурс с чужого сервера — утечка IP читателя, неожиданный контент, трекинг. На форумах с модерацией часто ограничивают домены или требуют превью через прокси.
Где встретить сегодня
- Архивы технических форумов (LOR, профильные разделы).
- Старые тикет-системы и порталы поддержки.
- Наследие в "цитате поста" при миграции на Discourse (часто есть конвертер BB → Markdown).
В рабочем IT-чате BB-код почти не используют; если коллега вставляет [b], это обычно отсылка к форумной эпохе или копипаст из старого треда.
Связанные материалы
| Тема | Ссылка |
|---|---|
| Форумы, сабж, этикет | 9.10 / 120 |
| Тон переписки (CAPS, срочность) | 1.22 / 7 |
| Внешний справочник | Неолурк: BB-код |
| Раздел "Веб-сайты" | intro |