Установка PrestaShop · 8 min read · Oct 19, 2025
Как установить Prestashop с Apache и бесплатным SSL Let's Encrypt на Debian 12

Prestashop — это бесплатное решение для электронной коммерции с открытым исходным кодом, написанное на PHP. Оно позволяет вам самостоятельно размещать и создавать интернет-магазины и развивать ваш онлайн-бизнес. Prestashop — это полностью настраиваемое и функционально насыщенное решение для электронной коммерции, которое позволяет создавать комплексные веб-сайты для электронной торговли. В настоящее время Prestashop используется более чем 250 000 интернет-магазинов по всему миру и доступен на 65 языках.
В этом руководстве я проведу вас шаг за шагом через установку PrestaShop на сервере Debian 12. Вы установите PrestaShop с помощью стека LAMP (Apache2, MariaDB и PHP), а затем защитите вашу установку PrestaShop с помощью сертификатов SL/TLS через Letsencrypt.
Предварительные требования
Перед тем как начать, пожалуйста, подготовьте следующее:
- Сервер Debian 12.
- Непользователь с правами администратора.
- Доменное имя, указывающее на IP-адрес сервера.
Установка зависимостей
PrestaShop — это платформа с открытым исходным кодом для создания интернет-магазина, написанная на PHP с MariaDB/MySQL в качестве базы данных. На следующем шаге вы установите зависимости для PrestaShop, которые включают пакеты стека LAMP (Apache2, MariaDB и PHP) с некоторыми дополнительными расширениями PHP. Вы установите конкретно PHP 8.1 через сторонний репозиторий, потому что текущий PrestaShop все еще не поддерживает PHP 8.2.
Сначала выполните следующую команду, чтобы добавить сторонний репозиторий PHP и GPG-ключ в вашу систему Debian.
sudo curl -sSLo /usr/share/keyrings/deb.sury.org-php.gpg https://packages.sury.org/php/apt.gpg
sudo sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'Обновите и обновите индекс пакетов Debian, выполнив следующую команду apt.
sudo apt updateПосле обновления репозитория установите зависимости для PrestaShop, используя следующую команду. Это установит пакеты LAMP Stack (Apache2, MariaDB, PHP 8.1), Certbot, плагин Certbot для Apache и дополнительные расширения PHP, необходимые для PrestaShop.
sudo apt install apache2 mariadb-server certbot python3-certbot-apache php8.1 php8.1-curl php8.1-xmlrpc php8.1-soap php8.1-intl php8.1-zip php8.1-cli php8.1-mysql php8.1-common php8.1-opcache php8.1-memcached php8.1-bcmath php8.1-gd php8.1-mbstring php8.1-xml php8.1-gmp php8.1-imagick unzipВведите y, чтобы продолжить установку.

После установки зависимостей проверьте каждую зависимость, используя следующую команду.
Проверьте службу apache2, чтобы убедиться, что служба работает, выполнив команду systemctl ниже.
sudo systemctl is-enabled apache2
sudo systemctl status apache2Следующий результат будет показан, что подтверждает, что служба apache2 работает и включена.

Теперь проверьте службу mariadb, используя следующую команду.
sudo systemctl is-enabled mariadb
sudo systemctl status mariadbВывод ниже подтверждает, что служба mariadb работает и включена.

Наконец, выполните следующую команду, чтобы проверить вашу версию PHP и список включенных расширений.
php -v
php -mВы должны увидеть, что PHP 8.1 установлена на вашем компьютере с Debian, с перечисленными включенными расширениями.

Настройка сервера MariaDB
Теперь, когда вы установили зависимости для PrestaShop, следующий шаг — защитить вашу установку сервера MariaDB с помощью утилиты mariadb-secure-installation. Затем вам нужно будет создать новую базу данных и пользователя для PrestaShop.
Выполните команду mariadb-secure-installation ниже, чтобы защитить вашу установку сервера MariaDB.
sudo mariadb-secure-installationВведите Y, чтобы подтвердить и применить новую конфигурацию, или n для Нет и отклонить ее. Ниже приведены конфигурации сервера MariaDB, о которых вас спросят:
- Переключить на аутентификацию unix_socket? Введите n и нажмите ENTER. Пользователь root по умолчанию уже защищен. Опционально, вы также можете включить его, набрав y для да.
- Изменить пароль root? Введите y, чтобы подтвердить и установить новый пароль root для MariaDB.
- Удалить анонимного пользователя? Введите y, чтобы подтвердить.
- Запретить удаленный вход root? Введите y, чтобы подтвердить. Только локальное соединение будет разрешено, если вы используете пользователя root MariaDB.
- Удалить тестовую базу данных и доступ к ней? Введите y, чтобы подтвердить и удалить базу данных по умолчанию ‘test’.
- Наконец, снова введите y, чтобы перезагрузить все привилегии таблиц на вашем сервере MariaDB и применить новые изменения.
Затем выполните команду клиента mariadb ниже, чтобы войти в сервер MariaDB. Введите ваш пароль root для MariaDB, когда будет предложено.
sudo mariadb -u root -pПосле входа выполните следующие запросы, чтобы создать новую базу данных prestashopdb, пользователя prestashop с паролем password. Новая база данных и пользователь MariaDB здесь будут использоваться для установки PrestaShop.
CREATE DATABASE prestashopdb;
GRANT ALL PRIVILEGES ON prestashopdb.* TO 'prestashop'@'localhost' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;Затем выполните следующий запрос, чтобы проверить пользователя MariaDB prestashop.
SHOW GRANTS FOR 'prestashop'@'localhost';Вывод ниже показывает, что пользователю MariaDB prestashop разрешен доступ к базе данных prestashopdb.

Наконец, введите quit, чтобы выйти из сервера MariaDB.
Настройка PHP
После настройки сервера MariaDB вы настроите вашу установку PHP, изменив файл php.ini. Затем вы также проверите вашу среду, чтобы убедиться, что все, что связано с конфигурацией PHP, соответствует требованиям PrestaShop.
Откройте файл конфигурации PHP по умолчанию /etc/php/8.1/apache2/php.ini с помощью следующей команды редактора nano.
sudo nano /etc/php/8.1/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Сохраните файл и выйдите из редактора, когда закончите.
Затем выполните следующую команду systemctl, чтобы перезапустить службу apache2 и применить изменения.
sudo systemctl restart apache2Теперь, когда вы настроили PHP, вы проверите, что ваша серверная среда готова к установке PrestaShop. Это можно сделать, используя проверщик среды, предоставленный PrestaShop.
Перейдите в директорию /var/www/html и загрузите скрипт проверки среды с помощью команды wget ниже. Вы увидите файл v1.1.tar.gz в вашей текущей рабочей директории.
cd /var/www/html
wget https://github.com/PrestaShop/php-ps-info/archive/refs/tags/v1.1.tar.gzИзвлеките файл v1.1.tar.gz и переименуйте извлеченную директорию в check-ps.
tar -xf v1.1.tar.gz
mv php-ps-info-1.1 check-psНаконец, откройте ваш веб-браузер и посетите IP-адрес сервера, за которым следует путь check-ps, чтобы получить доступ к скрипту проверки среды PrestaShop, например http://192.168.10.15/check-ps/phppsinfo.php.
Введите имя пользователя по умолчанию prestashop и пароль prestashop, затем нажмите Войти.

Убедитесь, что ваши зависимости, конфигурации PHP и расширения PHP соответствуют требованиям PrestaShop. Если нет, вы можете настроить свои параметры в соответствии с рекомендациями на странице.

Загрузка Prestashop
Теперь, когда сервер MariaDB и PHP настроены, следующий шаг — загрузить исходный код PrestaShop и настроить каталог установки с правильными правами и владельцем.
Переместите вашу рабочую директорию в /var/www/ и загрузите исходный код PrestaShop с помощью команды wget ниже. Обязательно проверьте страницу релизов PrestaShop, чтобы получить последнюю версию PrestaShop.
cd /var/www/
wget https://github.com/PrestaShop/PrestaShop/releases/download/8.1.2/prestashop_8.1.2.zipТеперь извлеките исходный код PrestaShop с помощью команды unzip ниже. Вы должны увидеть исходный код PrestaShop в zip-файле prestashop.zip.
unzip prestashop_8.1.2.zipИзвлеките файл prestashop.zip с помощью команды unzip ниже в целевой каталог /var/www/prestashop. Исходный код PrestaShop будет извлечен в директорию prestashop, поэтому ваш каталог установки Prestashop должен быть /var/www/prestashop.
unzip prestashop.zip -d /var/www/prestashopНаконец, выполните следующую команду, чтобы установить правильные права и разрешения для каталога установки PrestaShop /var/www/prestashop. Владельцем должно быть www-data с правами u+rw, что означает, что владелец может читать и записывать в целевой каталог.
sudo chown -R www-data:www-data /var/www/prestashop
sudo chmod u+rw /var/www/prestashopНастройка виртуального хоста Apache2
На следующем шаге вы создадите новую конфигурацию виртуального хоста Apache2, которая будет использоваться для запуска PrestaShop. Поэтому перед этим убедитесь, что ваше доменное имя указывает на IP-адрес сервера.
Для начала выполните следующую команду, чтобы включить модуль rewrite для Apache.
sudo a2enmod rewrite
Затем создайте новую конфигурацию виртуального хоста /etc/apache2/sites-available/prestashop.conf с помощью команды редактора nano.
sudo nano /etc/apache2/sites-available/prestashop.confВставьте следующую конфигурацию и обязательно измените доменное имя в параметре ServerName.
ServerAdmin [email protected]
DocumentRoot /var/www/prestashop
ServerName howtoforge.local
# включить переопределения .htaccess
AllowOverride All
Options +Indexes
Require all granted
# Отключить токен бэк-офиса
# SetEnv _TOKEN_ disabled
ErrorLog /var/log/apache2/prestashop.error.log
CustomLog /var/log/apache2/prestashop.access.log combined
Сохраните и закройте файл, когда закончите.
Затем выполните следующую команду, чтобы активировать файл виртуального хоста prestashop.conf и проверить вашу конфигурацию Apache.
sudo a2ensite prestashop.conf
sudo apachectl configtestЕсли у вас правильная конфигурация Apache, будет отображен вывод Syntax OK.

Теперь выполните команду systemctl ниже, чтобы перезапустить службу apache2 и применить изменения.
sudo systemctl restart apache2Наконец, сгенерируйте сертификаты SSL/TLS для вашего доменного имени PrestaShop, выполнив следующую команду certbot. Обязательно измените адрес электронной почты и доменное имя на вашу информацию.
sudo certbot --apache --agree-tos --no-eff-email --redirect --hsts --staple-ocsp --email [email protected] -d howtoforge.localПосле завершения процесса ваш файл виртуального хоста prestashop.conf будет автоматически настроен с HTTPS, и ваши сертификаты SSL/TLS будут доступны в каталоге /etc/letsencrypt/live/howtoforge.local.
Установка PrestaShop через командную строку
На этом этапе вы можете завершить установку PrestaShop через веб-интерфейс или командную строку. В этом примере вы завершите установку PrestaShop через командную строку.
Перейдите в каталог установки PrestaShop /var/www/prestashop/install.
cd /var/www/prestashop/installЗапустите скрипт index_cli.php следующим образом, чтобы начать установку PrestaShop через командную строку. Обязательно измените детали доменного имени, хоста базы данных MariaDB, имени, имени пользователя и пароля. Также обязательно измените адрес электронной почты и пароль, которые будут использоваться в качестве администратора для PrestaShop.
sudo -u www-data php index_cli.php --domain=howtoforge.local --db_server=127.0.0.1 --db_name=prestashopdb --db_user=prestashop --db_password=password --prefix=myps_ [email protected] --password=Passw0rdПосле завершения установки будет показан вывод “ Установка успешна “.

Затем выполните следующую команду, чтобы установить правильные разрешения для некоторых каталогов PrestaShop. Это позволит www-data быть владельцем, чтобы читать и записывать в эти целевые каталоги.
sudo chmod u+rw /var/www/prestashop/var/cache
sudo chmod u+rw /var/www/prestashop/var/logs
sudo chmod u+rw /var/www/prestashop/img
sudo chmod u+rw /var/www/prestashop/mails
sudo chmod u+rw /var/www/prestashop/modules
sudo chmod u+rw /var/www/prestashop/translations
sudo chmod u+rw /var/www/prestashop/upload
sudo chmod u+rw /var/www/prestashop/download
sudo chmod u+rw /var/www/prestashop/app/config
sudo chmod u+rw /var/www/prestashop/app/Resources/translationsТеперь выполните команду ниже, чтобы удалить каталог /var/www/prestashop/install и защитить вашу установку PrestaShop.
sudo rm -rf /var/www/prestashop/installЗатем откройте ваш веб-браузер и посетите ваше доменное имя PrestaShop, например http://howtoforge.local/. После успешной установки вы должны быть перенаправлены на безопасное HTTPS-соединение, и вы должны увидеть домашнюю страницу вашей установки PrestaShop.

Затем посетите доменное имя PrestaShop, за которым следует путь администратора, например https://howtoforge.local/admin/. Если все пройдет хорошо, вы должны быть перенаправлены на страницу входа в PrestaShop. Также вы можете увидеть, что путь URL по умолчанию для PrestaShop изменился на admin051rgjztgtkvgcie6dp.
Введите ваше имя пользователя администратора и пароль, затем нажмите Войти.

Если у вас есть правильное имя пользователя администратора и пароль, вам будет представлен панель управления администратора PrestaShop.

Еще одно замечание: вы можете выполнить следующую команду, чтобы проверить вход администратора PrestaShop.
ls /var/www/prestashopВывод ниже показывает, что страница администратора PrestaShop доступна по адресу admin051rgjztgtkvgcie6dp.

Заключение
В заключение, вы теперь успешно установили PrestaShop на Debian 12 шаг за шагом. Вы установили PrestaShop 8 с LAMP Stack (Apache2, MariaDB и PHP) и защитили установку PrestaShop с помощью сертификатов SSL/TLS. Более того, вы также узнали, как начать установку PrestaShop через командную строку. Теперь вы можете добавлять новые темы и дополнительные расширения, чтобы расширить вашу установку PrestaShop.
Get new posts in your inbox
No spam. Unsubscribe anytime.