Поиск по сайту:

Как установить электронную коммерцию Bagisto на Debian 11


На этой странице

  1. Предпосылки
  2. Установка стека LEMP
  3. Настройка корневого пароля MariaDB
  4. Настройка новой базы данных и пользователя для Bagiosto
  5. Установка Composer Tool
  6. Установка электронной коммерции Bagisto с Composer
  7. Настройка веб-сервера Nginx
  8. Подтвердить электронную коммерцию Bagisto
  9. Заключение

Bagisto — это бесплатное программное обеспечение для электронной коммерции с открытым исходным кодом, написанное на фреймворке Laravel PHP и использующее Vue.js — прогрессивный фреймворк JavaScript. Bagisto — это индивидуальная электронная коммерция, которая позволяет вам создать свой интернет-магазин в кратчайшие сроки. Он быстрый, отзывчивый, с красивым интерфейсом и простой в использовании. Bagis to — это платформа электронной коммерции, которая предоставляет несколько локалей для разных типов языков, несколько валют, поддерживает несколько тем магазина, а также предоставляет функциональную систему инвентаризации в нескольких магазинах.

В этом руководстве мы покажем вам, как установить Bagisto eCommerce на Debian 11 Bullseye. Мы будем использовать PHP-FPM, веб-сервер Nginx и базу данных MariaDB.

Предпосылки

  • Последняя версия Debian 11 Bullseye.
  • Пользователь с привилегиями root/sudo.
  • Доменное имя указывало на IP-адрес вашего сервера.

Установка стека LEMP

Сначала вы будете устанавливать стек LEMP на свой сервер Debian. Для текущей версии Bagisto eCommerce требуется PHP 7.4 или выше, MariaDB 10.2.17 или выше и веб-сервер Nginx.

Прежде чем приступить к установке пакетов, обновите репозиторий с помощью следующей команды.

sudo apt update

Теперь установите PHP-FPM, веб-сервер Nginx и базу данных MariaDB, используя приведенную ниже команду apt.

sudo apt install nginx-full mariadb-server php-fpm php-cli php-common php-zip php-mysql php-gd php-intl php-curl php-imap php-mbstring php-xml php-json libpcre3 git unzip -y

После завершения установки всех пакетов отредактируйте конфигурацию PHP php.ini с помощью редактора nano.

sudo nano /etc/php/7.4/fpm/php.ini
sudo nano /etc/php/7.4/cli/php.ini

Теперь измените следующую опцию с вашей текущей средой.

memory_limit = 512M
max_execution_time = 360
date.timezone = America/Toronto

Затем перезапустите службу PHP-FPM, чтобы применить новую конфигурацию.

sudo systemctl restart php7.4-fpm

И вы завершили базовую установку стека LEMP, которая будет использоваться для электронной коммерции Bagisto.

Настройка корневого пароля MariaDB

После того, как вы установили стек LAMP на свой сервер Debian, вы установите пароль root для базы данных MariaDB. Рекомендуемый способ установки корневого пароля MariaDB — использование инструмента командной строки mysql_secure_installation.

Выполните приведенную ниже команду mysql_secure_installation.

mysql_secure_installation

Теперь вам будет задано несколько вопросов:

  • Нажмите ENTER, чтобы установить пароль root для MariaDB.
  • Введите Y, чтобы переключить аутентификацию пользователя root с помощью метода unix_socket_authentication.
  • Введите Y, чтобы установить корневой пароль MariaDB, затем введите свой пароль и повторите.

  • Введите Y, чтобы удалить анонимного пользователя MariaDB.
  • Введите Y, чтобы отключить удаленный вход для пользователя root.
  • Введите Y еще раз, чтобы удалить тест базы данных по умолчанию со всеми привилегиями поверх него.
  • Введите Y, чтобы перезагрузить все права доступа к таблицам и применить новые изменения.

И вы завершили базовое безопасное развертывание базы данных MariaDB.

Настройка новой базы данных и пользователя для Bagiosto

После того, как вы настроили базу данных MariaDB, вы теперь создадите новую базу данных и пользователя для электронной коммерции Bagisto. Вам нужно будет войти в оболочку MariaDB, чтобы создать новую базу данных и пользователя.

Войдите в оболочку MariaDB как пользователь root, используя следующую команду.

mysql -u root -p

Теперь выполните следующий запрос, чтобы создать новую базу данных basgisto и пользователя bagistouser с паролем BagistoPassword.

CREATE DATABASE bagisto;
CREATE USER IDENTIFIED BY 'BagistoPassword';

Затем разрешите пользователю базы данных bagistouser доступ и запись в базу данных bagisto, затем перезагрузите все привилегии таблиц. Это необходимо для применения новых изменений привилегий MariaDB.

GRANT ALL ON bagisto.* TO  WITH GRANT OPTION;
FLUSH PRIVILEGES;

Теперь введите exit, чтобы выйти из оболочки MariaDB. И вы создали новую базу данных и пользователя для установки Bagisto.

Установка Composer Tool

На этом этапе вы будете устанавливать Composer в свою систему Debian. Composer необходим для установки Bagisto eCommerce.

Запустите приведенные ниже команды php, чтобы загрузить сценарий установки для Composer. Кроме того, эта команда проверит сценарий установщика. Убедитесь, что на экране появилось сообщение «Установщик проверен».

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '906a84df04cea2aa72f40b5f787e49f22d4c2f19492ac310e8cba5b96ac8b64115ac402c8cd292b8a03482574915d1a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"

Теперь запустите сценарий установки composer-setup.php, чтобы установить Composer, затем удалите сценарий composer-setup.php.

php composer-setup.php
php -r "unlink('composer-setup.php');"

Сценарий установки загрузит двоичный файл composer.phar. Переместите файл composer.phar и переименуйте его в /usr/local/bin/composer.

sudo mv composer.phar /usr/local/bin/composer

Чтобы проверить установку Composer, выполните приведенную ниже команду composer.

sudo -u www-data composer --version

Вы получите выходную версию Composer, как показано на скриншоте ниже.

Теперь, когда вы установили Composer на свой сервер, вы готовы установить Bagisto eCommerce с помощью Composer.

Установка электронной коммерции Bagisto с помощью Composer

На этом этапе вы будете устанавливать электронную коммерцию Bagisto вручную через Composer.

Создайте новые каталоги .cache и .config в каталоге /var/www/ и измените владельца обоих каталогов на www-data. Это будет использоваться для хранения кеша и конфигурации для Composer.

mkdir -p /var/www/{.cache,.config}
sudo chown -R www-data:www-data /var/www/{.cache,.config}

Затем создайте каталог /var/www/project и измените владельца на www-data. Вы будете устанавливать Bagisto eCommerce в этот каталог.

mkdir -p /var/www/project; sudo chown -R www-data:www-data /var/www/project

Переместите текущий рабочий каталог в /var/www/project и выполните приведенную ниже команду Composer, чтобы загрузить и установить исходный код Bagisto и все дополнительные зависимости PHP.

cd /var/www/project
sudo -u www-data composer create-project bagisto/bagisto

Когда процесс загрузки завершится, вы получите следующий вывод.

Затем перейдите в каталог /var/www/project/bagisto и отредактируйте файл .env с помощью редактора nano.

cd /var/www/project/bagisto
sudo nano .env

Измените значение APP_NAME на свою информацию и APP_ENV на рабочее.

APP_NAME=Bagisto
APP_ENV=production

Измените APP_DEBUG на false и введите URL-адрес установки в APP_URL.

APP_DEBUG=false
APP_URL=https://www.example.io

Введите подробную базу данных для вашей установки Bagisto, как показано ниже.

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=bagisto
DB_USERNAME=bagistouser
DB_PASSWORD=BagistoPassword
DB_PREFIX=

Сохраните конфигурацию и выйдите.

Теперь установите Bagisto eCommerce, используя следующую команду.

sudo -u www-data php artisan bagisto:install

Вам будет предложено подтвердить запуск команды установки. Введите yes для подтверждения.

Введите yes, чтобы развернуть Bagisto eCommerce в производственной среде.

Когда процесс установки будет завершен, вы получите пользователя и пароль администратора по умолчанию для установки Bagisto.

Наконец, вы можете запустить следующую команду, чтобы убедиться, что право собственности на каталог установки Bagisto /var/www/project/bagisto принадлежит www-data.

sudo chown -R www-data:www-data /var/www/project/bagisto

Теперь вы завершили установку интернет-магазина Bagisto. Перейдите к следующему шагу по настройке веб-сервера Nginx.

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

На этом этапе вы создадите новый блок сервера Nginx для электронной коммерции Bagisto. Веб-сервер Nginx является одним из лучших решений для обработки сложных CMS, таких как электронная коммерция, поскольку он легкий и быстрый.

Создайте новую конфигурацию блока сервера bagisto с помощью редактора nano.

sudo nano /etc/nginx/sites-available/bagisto

Скопируйте и вставьте следующую конфигурацию. Обязательно измените URL-адрес и путь сертификатов SSL на свои собственные.

server {
    listen 80;
    server_name example.io;
    return 302 https://$server_name$request_uri;
}

server {
  listen 443 ssl http2;

    server_name  example.io;
    root   /var/www/bagisto/public;
    index  index.php;

  ssl_certificate /etc/letsencrypt/live/example.io/fullchain.pem;
  ssl_certificate_key /etc/letsencrypt/live/example.io/privkey.pem;

  ssl_protocols TLSv1.2;
  ssl_prefer_server_ciphers on;
  ssl_ciphers ECDHE-RSA-AES256-GCM-SHA512:DHE-RSA-AES256-GCM-SHA512:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384;
  ssl_ecdh_curve secp384r1; # Requires nginx >= 1.1.0
  ssl_session_timeout  10m;
  ssl_session_cache shared:SSL:10m;
  ssl_session_tickets off; # Requires nginx >= 1.5.9
  # ssl_stapling on; # Requires nginx >= 1.3.7
  # ssl_stapling_verify on; # Requires nginx => 1.3.7
  resolver 8.8.8.8 8.8.4.4 valid=300s;
  resolver_timeout 5s;
  add_header X-Frame-Options DENY;
  add_header X-Content-Type-Options nosniff;
  add_header X-XSS-Protection "1; mode=block";

    access_log /var/log/nginx/example.com.access.log;
    error_log /var/log/nginx/example.com.error.log;

    client_max_body_size 100M;

    autoindex off;

    location / {
    try_files $uri /index.php$is_args$args;
      }

    location ~ \.php$ {
         include snippets/fastcgi-php.conf;
         fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
         include fastcgi_params;
         fastcgi_intercept_errors on;
    }
}

Сохраните файл конфигурации и выйдите.

Затем активируйте серверный блок bagisto с помощью следующей команды, затем проверьте конфигурацию Nginx.

sudo ln -s /etc/nginx/sites-available/bagisto /etc/nginx/sites-enabled/
sudo nginx -t

Если вы не получите сообщение об ошибке, вы увидите выходное сообщение, например Syntax OK.

Наконец, перезапустите службу Nginx, чтобы применить новую конфигурацию виртуального хоста.

sudo systemctl restart nginx

Теперь вы завершили настройку Nginx для электронной коммерции Bagisto, и теперь он готов к доступу под вашим доменным именем.

Подтвердить электронную коммерцию Bagisto

Чтобы проверить установку Bagisto eCommerce, откройте веб-браузер и введите доменное имя вашей установки в адресной строке.

Вы увидите домашнюю страницу электронной коммерции Bagisto по умолчанию, как показано ниже.

Затем откройте новую вкладку и перейдите на страницу администрирования вашей установки электронной коммерции Bagisto.

Введите администратора пользователя Bagisto по умолчанию и пароль admin123 и нажмите Войти.

И вы получите панель администратора электронной коммерции Bagisto.

Заключение

Поздравляем! Теперь вы установили электронную коммерцию Bagisto с PHP-FPM, Nginx и MariaDB в системе Debian 11 Bullseye. Теперь вы можете начать добавлять свои продукты и настраивать платежные плагины для своей электронной коммерции Bagisto.