url image

Как установить Opencart на виртуальный сервер

Что такое Opencart

Opencart — это CMS с открытым исходным кодом для создания интернет-магазинов. Для расширения её базовых возможностей существует много платных и бесплатных модулей от разработчиков со всего мира. Также у CMS большое комьюнити, которое обменивается опытом на тематических сайтах, помогает решать возникающие проблемы и способствует развитию проекта.

Установка

Скачать CMS можно с официального сайта, а локализованную версию — тут

Установка на сервер с панелью 

Для того, чтобы установить CMS на сайт, размещённый в панели, переходим в корневую директорию данного сайта через файловый менеджер и загружаем скачанный ранее архив.

После того, как архив скачан, распаковываем его (при распаковке выбирается корневая директория нашего сайта):

Далее переносим файлы из распакованной директории CMS в корень нашего сайта. Для этого нужно перейти в директорию, распакованную из архива, выделить все файлы и нажать Копировать:

В появившемся окне выбираем ту же директорию, что и на шаге распаковки, и отмечаем пункт Перенести файлы:

Пустую директорию и архив можно сразу удалить.

Также следует сразу сменить права на файлы CMS, если вы размещаете их в панели от пользователя root. Выбираем в файловом менеджере корневую директорию, нажимаем на Атрибуты:

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

На этом работа с файлами завершена.Если всё сделано верно, то при переходе по домену увидим начальное окно установки, тут можем выбрать язык интерфейса и нажать Продолжить:

На следующем шаге можно наблюдать требования к настройке веб-сервера.

При установке CMS предложит проверить, совпадает ли текущая конфигурация сервера с требуемыми параметрами (несовпадения будут выделены красным), их нужно будет исправить. Версия php должна быть от 5.4 и выше, также должны быть установлены необходимые расширения и выставлены разрешения на запись у указанных каталогов и файлов. Если каких-то расширений не хватает — установить их можно с помощью инструкции

Далее вводим данные для подключения к базе данных.

Готово, CMS установлена, рекомендуется удалить директорию установки install:

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

Теперь остается только заполнить сайт данными.

При выборе «Самостоятельного перемещения» нужно будет переместить директорию storage вручную, как указано в инструкции, и поправить путь к ней в файлах config.php и

admin/config.php.

  1. Переместитн
    /var/www/www-root/data/www/opencart-test.fvds.ru/system/storage/
    в
    /var/www/www-root/data/www/storage/
  2. Откройте файл config.php и измените его
    define('DIR_STORAGE', DIR_SYSTEM . 'storage/');
    в
    define('DIR_STORAGE', '/var/www/www-root/data/www/storage/');
  3. Откройте файл admin/config.php и измените его
    define('DIR_STORAGE', DIR_SYSTEM . 'storage/');
    в
    define('DIR_STORAGE', '/var/www/www-root/data/www/storage/');

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

mv /var/www/www-root/data/www/opencart-test.fvds.ru/system/storage/ /var/www/www-root/data/www/storage/

Установка на сервер с LAMP

Предполагается, что сервер уже подготовлен заранее — установлен LAMP, вручную или из рецепта, выполнены первичные настройки, а именно создана директория сайта, настроен веб-сервер, создана пустая база данных. 

Всё, что нам нужно сейчас — это поместить установочные файлы CMS в директорию сайта и дополнить настройки, подключившись к серверу по ssh.

1. Переходим в корневую директорию сайта, на который нужно установить CMS (в нашем примере это open-opencart-test.fvds.ru)

cd /var/www/open-opencart-test.fvds.ru/

2. Скачиваем архив с последней версией opencart 

wget --no-check-certificate https://www.opencart.ru/upload/opencart-3.0.3.2-ru.zip

3. Далее распаковываем архив:

unzip opencart-3.0.3.2-ru.zip

После распаковки архива содержимое директории сайта должно выглядеть подобным образом:

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

mv ./upload-3032-ru/* ./ или mv ./upload-3032-ru/{.,}* ./

Можем удалять архив и директорию upload-3032-ru и архив CMS:

rm -rf upload-3032-ru

rm opencart-3.0.3.2-ru.zip

и сменить права на файлы:

chown -R www-data:www-data /var/www/open-opencart-test.fvds.ru/

Далее, если всё было сделано верно, можно открыть домен в адресной строке и продолжить установку из браузера:

Примечание

При установке после введения информации для подключения к базе данных и данных авторизации в админке (шаг 3) может возникнуть ошибка 500, которая в логах apache будет описываться так:

[pid 163291] [client 127.0.0.1:46236] PHP Fatal error:  Uncaught Exception: Error: Variable 'sql_mode' can't be set to the value of 'MYSQL40'<br />Error No: 1231<br />SET @@session.sql_mode = 'MYSQL40' in /var/www/open-opencart-test.fvds.ru/system/library/db/mysqli.php:40\nStack trace:\n#0 /var/www/open-opencart-test.fvds.ru/system/library/db.php(45): DB\\MySQLi->query()\n#1 /var/www/open-opencart-test.fvds.ru/install/model/install/install.php(35): DB->query()\n#2 /var/www/open-opencart-test.fvds.ru/system/storage/modification/system/engine/loader.php(248): ModelInstallInstall->database()\n#3 /var/www/open-opencart-test.fvds.ru/system/engine/proxy.php(47): Loader->{closure}()\n#4 /var/www/open-opencart-test.fvds.ru/install/controller/install/step_3.php(11): Proxy->__call()\n#5 /var/www/open-opencart-test.fvds.ru/system/storage/modification/system/engine/action.php(79): ControllerInstallStep3->index()\n#6 /var/www/open-opencart-test.fvds.ru/system/engine/router.php(67): Action->execute()\n#7 /var/www/open-opencart-test.fvds.ru/system/engine/router.php(56): Router->execute()\n in /var/www/open-opencart-test.fvds.ru/system/library/db/mysqli.php on line 40, referer: http://open-opencart-test.fvds.ru/install/index.php?route=install/step_3

Исправить её можно, если закомментировать в файле /var/www/ваш_домен/install/model/install/install.php строку 35:

$db->query("SET @@session.sql_mode = 'MYSQL40'");

После этого установка продолжится.

Этот материал был полезен?

Скидка 25% новым клиентам!
Закажи сервер сегодня и получи скидку на первый месяц аренды!