Как установить OpenCart в Ubuntu 18.04

OpenCart — это бесплатная PHP-платформа для электронной коммерции с открытым исходным кодом, сочетающая мощные функции с гибкостью и удобным интерфейсом.

Благодаря таким функциям, как управление пользователями, несколько магазинов, партнерские программы, скидки, обзоры продуктов, многоязычие и несколько платежных шлюзов, OpenCart является предпочтительной платформой для многих онлайн-продавцов.

В этом руководстве мы покажем вам, как установить OpenCart на сервер Ubuntu 18.04. Мы будем использовать Nginx в качестве веб-сервера, последнюю версию PHP 7.2 и MySQL / MariaDB в качестве сервера базы данных.

Подготовка

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

  • Иметь доменное имя, указывающее на IP-адрес вашего публичного сервера. Мы будем использовать example.com .
  • Nginx устанавливается на ваш сервер Ubuntu, следуя этим инструкциям .
  • Сертификат SSL, установленный для вашего домена для шифрования информации пользователя. Вы можете установить бесплатный SSL-сертификат Let's Encrypt, следуя этим инструкциям .

Обновите системные пакеты до последних версий и установите утилиту unzip :

sudo apt update && sudo apt upgradesudo apt install unzip

Создание базы данных MySQL

Если на вашем сервере установлен MySQL или MariaDB, вы можете пропустить этот шаг, в противном случае вы можете установить серверный пакет MySQL 5.7 из репозиториев Ubuntu по умолчанию, набрав:

sudo apt install mysql-server mysql-client
Для новых установок MySQL рекомендуется запустить команду mysql_secure_installation чтобы повысить безопасность вашего сервера MySQL.

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

sudo mysql

Из оболочки MySQL запустите следующий оператор SQL, чтобы создать новую базу данных с именем opencart :

CREATE DATABASE opencart;

Затем создайте учетную запись пользователя MySQL с именем opencart и предоставьте пользователю необходимые разрешения , выполнив следующую команду:

GRANT ALL ON opencart.* TO 'opencart'@'localhost' IDENTIFIED BY 'change-with-strong-password';
Убедитесь, что вы сменили change-with-strong-password с надежным паролем.

После этого выйдите из консоли mysql, набрав:

EXIT;

Установка и настройка PHP

PHP 7.2, который является версией PHP по умолчанию в Ubuntu 18.04, полностью поддерживается и рекомендуется для OpenCart. Поскольку мы будем использовать Nginx в качестве веб-сервера, мы также установим пакет PHP-FPM.

Выполните следующую команду, чтобы установить PHP и все необходимые модули PHP:

sudo apt install php7.2-common php7.2-cli php7.2-fpm php7.2-opcache php7.2-gd php7.2-mysql php7.2-curl php7.2-intl php7.2-xsl php7.2-mbstring php7.2-zip php7.2-bcmath php7.2-soap

Служба PHP-FPM автоматически запустится после завершения процесса установки, вы можете проверить это, распечатав статус службы:

sudo systemctl status php7.2-fpm

В выводе должно быть указано, что служба fpm активна и работает.

● php7.2-fpm.service - The PHP 7.2 FastCGI Process Manager
   Loaded: loaded (/lib/systemd/system/php7.2-fpm.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2019-02-25 10:45:42 UTC; 53s ago
     Docs: man:php-fpm7.2(8)
 Main PID: 27446 (php-fpm7.2)
   Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0req/sec"
    Tasks: 3 (limit: 505)
   CGroup: /system.slice/php7.2-fpm.service
           ├─27446 php-fpm: master process (/etc/php/7.2/fpm/php-fpm.conf)

Установите необходимые и рекомендуемые параметры PHP, отредактировав файл php.ini с помощью sed ::

sudo sed -i "s/memory_limit = .*/memory_limit = 1024M/" /etc/php/7.2/fpm/php.inisudo sed -i "s/upload_max_filesize = .*/upload_max_filesize = 256M/" /etc/php/7.2/fpm/php.inisudo sed -i "s/zlib.output_compression = .*/zlib.output_compression = on/" /etc/php/7.2/fpm/php.inisudo sed -i "s/max_execution_time = .*/max_execution_time = 18000/" /etc/php/7.2/fpm/php.inisudo sed -i "s/;date.timezone.*/date.timezone = UTC/" /etc/php/7.2/fpm/php.inisudo sed -i "s/;opcache.save_comments.*/opcache.save_comments = 1/" /etc/php/7.2/fpm/php.ini

Установка OpenCart

На момент написания этой статьи последней стабильной версией OpenCart была версия 3.0.3.1 .

Перед загрузкой архива OpenCart сначала создайте каталог, в котором будут храниться наши файлы OpenCart:

sudo mkdir -p /var/www/html/example.com

Загрузите последнюю версию OpenCart из репозитория OpenCart Github, используя следующую команду wget :

cd /tmpwget https://github.com/opencart/opencart/releases/download/3.0.3.1/opencart-3.0.3.1.zip

После завершения загрузки распакуйте архив OpenCart и переместите извлеченные файлы в корневой каталог документов домена:

unzip opencart-*.zipsudo mv /tmp/upload/* /var/www/html/example.com/

Скопируйте файлы конфигурации с помощью команды cp :

sudo cp /var/www/html/example.com/{config-dist.php,config.php}sudo cp /var/www/html/example.com/admin/{config-dist.php,config.php}

Установите правильные разрешения, чтобы веб-сервер мог иметь полный доступ к файлам и каталогам сайта, используя следующую команду chown :

sudo chown -R www-data: /var/www/html

Настройка Nginx

К настоящему времени у вас уже должен быть установлен Nginx с сертификатом SSL на вашем сервере Ubuntu, если нет, проверьте предварительные условия для этого руководства.

Откройте текстовый редактор и создайте следующий файл:

sudo nano /etc/nginx/sites-available/example.com
/etc/nginx/sites-available/example.com
# Redirect HTTP -> HTTPS
server {
    listen 80;
    server_name www.example.com example.com;

    include snippets/letsencrypt.conf;
    return 301 https://example.com$request_uri;
}

# Redirect WWW -> NON WWW
server {
    listen 443 ssl http2;
    server_name www.example.com;

    ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;
    include snippets/ssl.conf;

    return 301 https://example.com$request_uri;
}

server {
    listen 443 ssl http2;
    server_name example.com;

    root /var/www/html/example.com;
    index index.php;

    # SSL parameters
    ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
    ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem;
    include snippets/ssl.conf;
    include snippets/letsencrypt.conf;

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

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

    location = /robots.txt {
        allow all;
        log_not_found off;
        access_log off;
    }

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

    location ~ .php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php7.2-fpm.sock;
    }

    location ~* .(js|css|png|jpg|jpeg|gif|ico|svg)$ {
        expires max;
        log_not_found off;
    }

}
Не забудьте заменить example.com своим доменом OpenCart и указать правильный путь к файлам сертификатов SSL. Все HTTP-запросы будут перенаправлены на HTTPS . Фрагменты, используемые в этой конфигурации, созданы в этом руководстве .

Перед перезапуском сервиса Nginx проверьте, нет ли синтаксических ошибок:

sudo nginx -t

Если ошибок нет, результат должен выглядеть так:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Наконец, перезапустите службу Nginx , набрав:

sudo systemctl restart nginx

Завершение установки OpenCart

Теперь, когда OpenCart загружен и настройка сервера завершена, вы можете завершить установку через веб-интерфейс.

Откройте браузер, введите свой домен, и появится экран, подобный следующему:

Прочтите лицензионное соглашение OpenCart, выберите язык, который вы хотите использовать, и нажмите кнопку « Continue .

Далее вы увидите следующую информационную страницу:

Убедитесь, что все требования перед установкой соблюдены, и нажмите кнопку « Continue .

На следующем экране мастер настройки попросит вас ввести данные подключения к базе данных. Введите данные пользователя MySQL и базы данных, которые вы создали ранее.

Введите имя пользователя, пароль и адрес электронной почты для администратора и начните установку, нажав кнопку « Continue .

После завершения установки вы попадете на страницу, информирующую вас об установке OpenCart.

Чтобы получить доступ к административной панели OpenCart, нажмите кнопку « Login to your Administration в Login to your Administration . Введите свое имя пользователя и пароль, и вы будете перенаправлены на панель администратора.

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

Оставьте параметр по умолчанию « Automatically Move и нажмите красную кнопку « Move . Каталог, в который вы перемещаете каталог storage должен быть доступен веб-серверу.

Отсюда вы можете начать настраивать установку OpenCart и добавлять новые продукты.

Вам также необходимо удалить каталог установки. Для этого вернитесь в терминал и введите следующую команду rm :

sudo rm -rf /var/www/html/example.com/install

Выводы

Поздравляем, вы успешно установили OpenCart на свой сервер Ubuntu 18.04.

Документация OpenCart — хорошее место для начала, чтобы узнать больше о том, как управлять установкой OpenCart.

Если у вас есть вопросы, не стесняйтесь оставлять комментарии ниже.

Оставьте комментарий

Ваш адрес email не будет опубликован.