Webasyst

Материал из Энциклопедия интернет-маркетинга MarketWiki

Webasyst - российский PHP-фреймворк с открытым исходным кодом для разработки веб-приложений, управления сайтами и автоматизации бизнеса. Распространяется под лицензией LGPL. Разрабатывается компанией «Артикус» с 2011 года.

В отличие от фреймворков общего назначения, Webasyst содержит встроенную логику для работы с бизнес-сущностями: контактами, пользователями, валютами, заказами, платёжными транзакциями и рабочими процессами. Это позволяет быстро создавать онлайн-приложения для управления бизнесом.

Системные требования

[править]
  • Веб-сервер: Apache + mod_php либо nginx/lighttpd + FastCGI. IIS номинально поддерживается, но разработчиком не рекомендуется. Стандартной конфигурацией является сочетание Apache + mod_php.
  • PHP: версия 7.4.24 или выше.
  • Обязательные расширения PHP: mbstring, iconv, JSON, cURL, Imagick или GD, dom/xml, Zlib.
  • MySQL: версия 4.1 или выше.

Основные особенности

[править]
  • Кодировка символов: UTF-8.
  • Поддержка интернационализации: Gettext.
  • Языки интерфейса: русский и английский, с возможностью подключения других языковых локалей.
  • Парадигмы проектирования: ООП, MVC, одиночка, фабрика.
  • Поддержка API для управления данными и доступа из внешних систем.
  • Поддержка ЧПУ.
  • Маршрутизация HTTP-запросов с возможностью применения регулярных выражений.
  • Автозагрузка PHP-классов и автоматическое подключение HTML-шаблонов благодаря стандартизированным именам файлов.
  • Встроенный шаблонизатор HTML: Smarty.
  • Встроенная библиотека JavaScript: jQuery.
  • Поддержка нескольких механизмов кеширования.
  • Поддержка отправки push-уведомлений и подключения к CDN-провайдерам.
  • Встроенная реализация авторизации через OAuth 2.0.
  • Поддержка событий для интеграции программных продуктов между собой.
  • Встроенные виды капчи.
  • Механизм обработки HTTP-запросов от платёжных систем.
  • Механизм автоматического формирования Sitemap-файлов.
  • Поддержка тем оформления для страниц сайтов.
  • Консольные команды для автоматизации разработки.
  • Поддержка мобильных устройств.
  • Автоматизированная установка новых версий фреймворка и созданных на его основе продуктов.

Типы расширений

[править]

Webasyst поддерживает несколько видов программных продуктов, которые можно создавать и устанавливать:

  • Приложения - основные функциональные модули (например, Shop-Script, CRM, «Сайт»).
  • Плагины - расширения функциональности отдельных приложений, а также системные плагины для расчёта доставки, приёма платежей и отправки SMS.
  • Виджеты - информационные блоки для отображения на дашборде.
  • Темы дизайна - шаблоны оформления для публичных страниц сайтов.

Все расширения устанавливаются через встроенное приложение «Инсталлер» из официального каталога.

Встроенные приложения

[править]

После установки Webasyst пользователю доступны следующие базовые приложения:

  • «Инсталлер» - для установки, обновления и удаления программных продуктов.
  • «Сайт» - для создания и управления веб-сайтами.
  • «Настройки» - для управления общими настройками аккаунта, сайтов, пользователей.
  • «Команда» - для настройки прав доступа пользователей.

Дополнительные приложения (например, интернет-магазин Shop-Script, CRM, «Блог») устанавливаются через «Инсталлер».

Дашборд и виджеты

[править]

В системе предусмотрен специальный раздел «дашборд» для просмотра истории действий и управления виджетами - небольшими информационными блоками, отображающими различные параметры работы сайтов и приложений. Веб-страницу с виджетами можно выводить на экран телевизора с поддержкой онлайн-трансляций.

Аутентификация

[править]

Доступ к пользовательскому пространству защищён системой аутентификации, которая может работать в нескольких режимах:

  • с логином и паролем;
  • по одноразовому числовому коду, отправляемому в email- или SMS-сообщении;
  • с использованием сервиса Webasyst ID (на основе протокола OAuth 2.0).

Настройка веб-сайтов

[править]

С помощью одной установленной копии Webasyst можно управлять неограниченным количеством сайтов с разными доменными именами. Для каждого сайта настраиваются:

  • маршрутизация HTTP-запросов между разными приложениями;
  • перенаправления;
  • дизайн и содержимое страниц;
  • личный кабинет и способ авторизации;
  • использование HTTPS;
  • содержимое файлов robots.txt и favicon;
  • подключение к CDN-сервисам.

Распространённость

[править]

В июне 2023 года зафиксировано более 17 000 действующих веб-сайтов, созданных с помощью Webasyst. Наиболее популярное приложение, созданное на этом фреймворке - интернет-магазин Shop-Script.

Разработка

[править]

На сайте фреймворка доступна документация для разработчиков с пошаговыми инструкциями по созданию приложений, плагинов, виджетов и тем дизайна. Для автоматизации рутинных действий предусмотрены консольные команды (CLI), запускаемые через файл `wa.php`.

Новый интерфейс

[править]

В апреле 2021 года добавлена поддержка программного инструментария для создания обновлённого интерфейса пользователя. Для помощи разработчикам в переходе на новый режим интерфейса выпущено приложение UI со встроенной документацией.

Связанные термины

[править]