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

Как установить Prestashop на сервер Ubuntu 24.04


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

  1. Предварительные условия
  2. Установка зависимостей
  3. Настройка PHP
  4. Настройка сервера MariaDB
  5. Проверка среды сервера
  6. Скачивание Престашопа
  7. Настройка виртуального хоста Apache
  8. Защита Prestashop с помощью HTTPS
  9. Установка Престашопа
  10. Заключение

Prestashop — это бесплатное решение для электронной коммерции с открытым исходным кодом, написанное на PHP. Это позволяет вам создавать интернет-магазины, самостоятельно размещать их и развивать свой онлайн-бизнес.

Prestashop — это полностью настраиваемое и многофункциональное решение для электронной коммерции, позволяющее создавать комплексные веб-сайты электронной коммерции. В настоящее время Prestashop используется более чем в 250 000 интернет-магазинах по всему миру и доступен на 65 языках.

В этом руководстве вы узнаете, как установить Prestashop на сервер Ubuntu 24.04 с помощью стека LAMP (Linux, Apache, MySQL/MariaDB и PHP) и Composer.

Предварительные условия

Прежде чем начать работу с этим руководством, убедитесь, что у вас есть следующее:

  • Сервер Ubuntu 24.04.
  • Пользователь без полномочий root с правами администратора.
  • Доменное имя указывает на IP-адрес сервера.

Установка зависимостей

Чтобы установить Prestashop, вам необходимо установить зависимости в вашей системе. В этом примере вы установите пакеты LAMP Stack (Linux, Apache, MySQL/MariaDB и PHP), Composer и Git.

Во-первых, выполните команду ниже, чтобы обновить индекс пакета Ubuntu.

sudo apt update

Теперь выполните следующую команду, чтобы установить стек LAMP (Linux, Apache, MySQL/MariaDB и PHP), Composer и Git в качестве зависимостей для Prestashop. Введите Y, чтобы продолжить установку.

sudo apt install apache2 mariadb-server composer git php php-curl php-xmlrpc php-soap php-intl php-zip php-cli php-mysql php-common php-opcache php-memcached php-bcmath php-gd php-mbstring php-xml php-gmp php-imagick

После завершения установки проверьте состояние веб-сервера Apache, выполнив следующие действия:

sudo systemctl is-enabled apache2
sudo systemctl status apache2

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

Проверьте состояние сервера MariaDB с помощью команды ниже:

sudo systemctl is-enabled mariadb
sudo systemctl status mariadb

Вы увидите аналогичный результат: сервер MariaDB запущен и включен в вашей системе.

Теперь проверьте версию PHP и перечислите включенные расширения следующим образом:

php -v
php -m

В выводе ниже вы можете видеть, что PHP 8.3 установлен с включенными некоторыми расширениями fileinfo, gd и opcache.

Наконец, проверьте версию Composer и Git с помощью команды ниже. Вы увидите, что Composer 2.7.1 установлен.

sudo -u www-data composer --version

Настройка PHP

Теперь, когда вы установили зависимости для Prestashop, вы настроите PHP, отредактировав файл php.ini и изменив некоторые параметры по умолчанию, необходимые для Prestashop.

Откройте файл конфигурации PHP по умолчанию /etc/php/8.3/apache2/php.ini с помощью следующей команды nano editor.

sudo nano /etc/php/8.3/apache2/php.ini

Измените конфигурацию по умолчанию следующим образом. Настройте параметры date.timezone и memory_limit в соответствии со средой вашего сервера.

date.timezone = Europe/Amsterdam
max_execution_time = 130
memory_limit = 256M
allow_url_fopen = On
allow_url_include = Off
post_max_size = 128M
upload_max_filesize = 128M
max_input_vars = 5000

Сохраните и выйдите из файла, когда закончите.

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

sudo systemctl restart apache2

Настройка сервера MariaDB

В этом разделе вы защитите сервер MariaDB и создадите новую базу данных и пользователя для Prestashop. Вы защитите MariaDB с помощью команды mariadb-secure-installation, а затем создадите новую базу данных и пользователя с помощью клиента mariadb.

Чтобы защитить ваш сервер MariaDB, выполните команду mariadb-secure-installation ниже:

sudo mariadb-secure-installation

После выполнения команды вас спросят о следующих конфигурациях:

  • Переключиться на аутентификацию unix_socket? Введите n и нажмите ENTER. Пользователь root MariaDB по умолчанию уже защищен. при желании вы также можете включить его, набрав y вместо «да».
  • Измените пароль root. Введите y, чтобы подтвердить и настроить новый корневой пароль MariaDB.
  • Удалить анонимных пользователей? Введите y для подтверждения.
  • Запретить удаленный вход в систему root? Введите y для подтверждения. Если вы используете root-пользователя MariaDB, будет разрешено только локальное подключение.
  • Удалите тестовую базу данных и получите к ней доступ. Введите y, чтобы подтвердить и удалить базу данных по умолчанию «test».
  • Наконец, введите y еще раз, чтобы перезагрузить все привилегии таблиц на вашем сервере MariaDB и применить новые изменения.

Теперь, когда вы защитили и настроили сервер MariaDB, вы создадите новую базу данных и пользователя для Prestashop с помощью клиента mariadb.

Войдите на сервер MariaDB как root с помощью команды mariadb ниже. При появлении запроса введите свой пароль root.

sudo mariadb -u root -p

Теперь выполните следующие запросы, чтобы создать новую базу данных prestashopdb и нового пользователя prestashop с паролем p4ssword. Обязательно измените подробную информацию на свою.

CREATE DATABASE prestashopdb;
CREATE USER prestashop@localhost IDENTIFIED BY 'p4ssword';
GRANT ALL PRIVILEGES on prestashopdb.* TO prestashop@localhost;
FLUSH PRIVILEGES;

Затем выполните приведенный ниже запрос, чтобы убедиться, что пользователь prestashop может получить доступ к базе данных prestashopdb.

SHOW GRANTS FOR prestashop@localhost;

В выводе ниже вы можете видеть, что пользователь prestashop может получить доступ к базе данных prestashopdb.

Наконец, введите quit, чтобы выйти с сервера MariaDB.

Проверка среды сервера

После того, как вы настроили PHP и MariaDB, вы убедитесь, что ваш сервер готов к установке Prestashop. Вы будете использовать средство проверки Prestashop, чтобы убедиться, что ваш сервер готов.

Перейдите в каталог /var/www/html и загрузите средство проверки Prestashop с помощью команды wget ниже.

cd /var/www/html
wget https://github.com/PrestaShop/php-ps-info/archive/refs/tags/v1.1.tar.gz

Выполните следующую команду, чтобы извлечь исходный код средства проверки Prestashop, и переименуйте извлеченный каталог в ps-check.

tar -xf v1.1.tar.gz
mv php-ps-info-1.1 ps-check

Теперь посетите http://server-ip/ps-check/phppsinfo.php в своем веб-браузере. Войдите в систему с пользователем и паролем по умолчанию prestashop и убедитесь, что ваш сервер готов к установке Prestashop.

Скачиваем Престашоп

Теперь, когда ваш сервер готов, вы можете установить PrestaShop с Composer или загрузить его вручную через wget. В этом примере вы загрузите Prestashop вручную.

Создайте новый каталог /var/www/prestashop со следующим:

mkdir -p /var/www/prestashop

Перейдите в каталог /var/www/prestashop и загрузите исходный код Prestashop с помощью команды wget ниже. Обязательно посетите страницу Prestasho GitHub, чтобы получить последнюю версию.

cd /var/www/prestashop wget https://github.com/PrestaShop/PrestaShop/releases/download/8.1.6/prestashop_8.1.6.zip

Извлеките исходный код Prestashop с помощью команды unzip ниже.

unzip prestashop_8.1.6.zip

Теперь выполните следующую команду, чтобы изменить права доступа и владельца каталога установки Prestashop /var/www/prestashop.

sudo chown -R www-data:www-data /var/www/prestashop
sudo chmod u+rw /var/www/prestashop

Настройка виртуального хоста Apache

В этом разделе вы создадите новый файл виртуального хоста для Prestashop. Поэтому убедитесь, что ваше доменное имя указывает на IP-адрес сервера Prestashop.

Запустите команду ниже, чтобы включить модули Apache: rewrite, headers и ssl.

sudo a2enmod rewrite headers ssl

Создайте новую конфигурацию виртуального хоста /etc/apache2/sites-available/prestashop.conf с помощью редактора nano.

sudo nano /etc/apache2/sites-available/prestashop.conf

Добавьте следующую конфигурацию. Обязательно замените параметр ServerName своим доменным именем.

<VirtualHost *:80>
    ServerName howtoforge.local
    ServerAdmin [email 
    DocumentRoot /var/www/prestashop

    <Directory /var/www/prestashop>
        # enable the .htaccess rewrites
        AllowOverride All
        Options +Indexes
        Require all granted

        # Disable back office token
        # SetEnv _TOKEN_ disabled
    </Directory>

     ErrorLog /var/log/apache2/prestashop_error.log
     CustomLog /var/log/apache2/prestashop_access.log combined
</VirtualHost>

Сохраните и выйдите из файла, когда закончите.

Затем выполните команду ниже, чтобы включить файл prestashop.conf и проверьте синтаксис Apache. Если у вас правильный синтаксис, вы получите результат Синтаксис в порядке.

sudo a2ensite prestashop.conf
sudo apachectl configtest

Наконец, выполните приведенную ниже команду, чтобы перезапустить веб-сервер Apache и применить изменения.

sudo systemctl restart apache2

Защита Prestashop с помощью HTTPS

В этом руководстве вы защитите Prestashop с помощью HTTPS через Certbot и Letsencrypt. Вам необходимо установить Certbot для генерации сертификатов SSL/TLS из Letsencrypt. Для этого вам также понадобится адрес электронной почты.

Установите пакеты certbot и python3-certbot-apache с помощью команды ниже. Введите Y, чтобы подтвердить установку.

sudo apt install certbot python3-certbot-apache

Теперь запустите команду certbot ниже, чтобы сгенерировать сертификаты SSL и защитить Prestashop с помощью HTTPS. Обязательно измените адрес электронной почты и имя домена.

sudo certbot --apache --agree-tos --no-eff-email --redirect --hsts --staple-ocsp --email [email  -d howtoforge.local

После завершения процесса ваш Prestashop будет защищен с помощью HTTPS, а ваши SSL-сертификаты будут доступны по адресу /etc/letsencrypt/live/domain. conf.

Установка Престашопа

Посетите свое доменное имя Prestashop, например http://howtoforge.local, с помощью веб-браузера. Вы увидите мастера установки Prestashop.

Выберите язык, например английский, и нажмите «Далее».

Нажмите Согласен, чтобы принять лицензионное соглашение Prestashop.

Введите информацию о своем магазине, а также нового пользователя и пароль администратора для вашей установки Prestashop. Затем снова нажмите Далее.

Вы можете установить демо-данные и дополнительные модули в свой Prestashop. Затем снова нажмите Далее.

Введите данные вашей базы данных MariaDB и нажмите Далее, чтобы продолжить установку.

После завершения установки вы увидите следующее. Нажмите Открыть свой магазин, чтобы просмотреть домашнюю страницу Prestashop, или Управление своим магазином, чтобы получить доступ к странице администрирования Prestashop.

Прежде чем получить доступ к странице администрирования Prestashop, вернитесь в терминал и выполните команду ниже, чтобы удалить каталог /install.

sudo rm -rf /var/www/prestashop/install

Заключение

Поздравляем! Вы установили Prestashop на сервер Ubuntu 24.04. У вас Prestashop работает со стеком LAMP и защищен HTTPS через Certbot и letsencrypt.