Установка и настройка Bagisto (Laravel)

Наша компания занимается разработкой, поддержкой и обслуживанием сайтов любой сложности. От простых одностраничных сайтов до масштабных кластерных систем построенных на микро сервисах. Опыт разработчиков подтвержден сертификатами от вендоров.

Разработка и обслуживание любых видов сайтов:

Информационные сайты или веб-приложения
Сайты визитки, landing page, корпоративные сайты, онлайн каталоги, квиз, промо-сайты, блоги, новостные ресурсы, информационные порталы, форумы, агрегаторы
Сайты или веб-приложения электронной коммерции
Интернет-магазины, B2B-порталы, маркетплейсы, онлайн-обменники, кэшбэк-сайты, биржи, дропшиппинг-платформы, парсеры товаров
Веб-приложения для управления бизнес-процессами
CRM-системы, ERP-системы, корпоративные порталы, системы управления производством, парсеры информации
Сайты или веб-приложения электронных услуг
Доски объявлений, онлайн-школы, онлайн-кинотеатры, конструкторы сайтов, порталы предоставления электронных услуг, видеохостинги, тематические порталы

Это лишь некоторые из технических типов сайтов, с которыми мы работаем, и каждый из них может иметь свои специфические особенности и функциональность, а также быть адаптированным под конкретные потребности и цели клиента

Предлагаемые услуги
Показано 1 из 1 услугВсе 2065 услуг
Установка и настройка Bagisto (Laravel)
Простая
от 1 рабочего дня до 3 рабочих дней
Часто задаваемые вопросы

Наши компетенции:

Этапы разработки

Последние работы

  • image_website-b2b-advance_0.png
    Разработка сайта компании B2B ADVANCE
    1262
  • image_web-applications_feedme_466_0.webp
    Разработка веб-приложения для компании FEEDME
    1171
  • image_websites_belfingroup_462_0.webp
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    874
  • image_ecommerce_furnoro_435_0.webp
    Разработка интернет магазина для компании FURNORO
    1094
  • image_crm_enviok_479_0.webp
    Разработка веб-приложения для компании Enviok
    831
  • image_bitrix-bitrix-24-1c_fixper_448_0.png
    Разработка веб-сайта для компании ФИКСПЕР
    851

Установка и настройка Bagisto (Laravel)

Bagisto разворачивается на стандартном LEMP-стеке. Установка занимает от нескольких часов до 1-2 рабочих дней с учётом конфигурации окружения, настройки почты, платёжных методов и первичного импорта данных.

Требования к серверу

Компонент Минимум Рекомендуется
PHP 8.1 8.2+
MySQL / MariaDB 8.0 / 10.3 MySQL 8.0
Composer 2.x 2.x
Node.js 16 18 LTS
RAM 1 GB 2 GB+

Расширения PHP: BCMath, Ctype, cURL, DOM, Fileinfo, JSON, Mbstring, OpenSSL, PCRE, PDO, Tokenizer, XML, GD или Imagick.

Установка через Composer

composer create-project bagisto/bagisto:^2.2 myshop
cd myshop
cp .env.example .env

Редактируем .env:

APP_URL=https://myshop.example.com
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=bagisto
DB_USERNAME=bagisto_user
DB_PASSWORD=secret

CACHE_DRIVER=redis
QUEUE_CONNECTION=redis
SESSION_DRIVER=redis

REDIS_HOST=127.0.0.1
REDIS_PORT=6379

Запуск установщика:

php artisan bagisto:install

Команда выполняет миграции, сидеры, публикует ассеты и создаёт первого администратора. После — сборка фронтенда:

npm install
npm run build

Настройка Nginx

server {
    listen 80;
    server_name myshop.example.com;
    root /var/www/myshop/public;
    index index.php;

    add_header X-Frame-Options "SAMEORIGIN";
    add_header X-Content-Type-Options "nosniff";

    charset utf-8;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location = /favicon.ico { access_log off; log_not_found off; }
    location = /robots.txt  { access_log off; log_not_found off; }

    error_page 404 /index.php;

    location ~ \.php$ {
        fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
        include fastcgi_params;
    }

    location ~ /\.(?!well-known).* {
        deny all;
    }
}

После настройки SSL через Certbot: certbot --nginx -d myshop.example.com.

Настройка очередей (Supervisor)

Bagisto активно использует очереди для отправки писем, генерации инвойсов и webhook-уведомлений.

[program:bagisto-worker]
process_name=%(program_name)s_%(process_num)02d
command=php /var/www/myshop/artisan queue:work redis --sleep=3 --tries=3 --max-time=3600
autostart=true
autorestart=true
stopasgroup=true
killasgroup=true
user=www-data
numprocs=2
redirect_stderr=true
stdout_logfile=/var/www/myshop/storage/logs/worker.log
stopwaitsecs=3600
supervisorctl reread
supervisorctl update
supervisorctl start bagisto-worker:*

Первичная конфигурация в панели администратора

После входа по /admin настраиваются:

Каналы и локали

Канал — это отдельная "витрина" магазина с собственным доменом, валютой и языком. Для мультиязычного магазина создаётся один канал с несколькими локалями.

Налоги

Каталог → Налоги → Налоговые категории — создаём категории (например, НДС 20%). Затем привязываем к группам налогоплательщиков и регионам через Налоговые ставки.

Методы доставки

Встроенные: FlatRate, Free Shipping. Для СДЭК или Почты России потребуется пакет или кастомный провайдер — подключается в config/carriers.php.

Методы оплаты

Встроенные: Cash On Delivery, Money Transfer, PayPal. Кастомные шлюзы регистрируются в config/paymentmethods.php и реализуют интерфейс Webkul\Payment\Payment.

Настройка почты

MAIL_MAILER=smtp
MAIL_HOST=smtp.example.com
MAIL_PORT=587
[email protected]
MAIL_PASSWORD=secret
MAIL_ENCRYPTION=tls
[email protected]
MAIL_FROM_NAME="Мой Магазин"

Шаблоны писем публикуются командой:

php artisan vendor:publish --tag=bagisto-mail-views

После — редактируются в resources/views/vendor/shop/emails/.

Крон для планировщика

* * * * * cd /var/www/myshop && php artisan schedule:run >> /dev/null 2>&1

Планировщик отвечает за очистку корзин, генерацию sitemap и обновление курсов валют (если подключён провайдер).

Права на директории

chmod -R 775 storage bootstrap/cache
chown -R www-data:www-data /var/www/myshop

После установки — чеклист

  • Проверить php artisan config:cache && php artisan route:cache
  • Настроить резервное копирование БД (cron + mysqldump или spatie/laravel-backup)
  • Установить Redis и проверить подключение через php artisan tinkerRedis::ping()
  • Проверить отправку почты через тестовый заказ
  • Настроить мониторинг очередей — Laravel Horizon (composer require laravel/horizon)
  • Проверить генерацию sitemap по адресу /sitemap.xml