Установка и настройка OpenCart в Linux Ubuntu Server

Изображение пользователя salt.

Всем привет. Решил оставить памятку по данному материалу.
Изначально инструкцию брал тут.

В моём случае, она будет выглядеть так:

Перед началом установки на сервер должны быть установлены:
веб-сервер, например Apache
PHP выше версии 5.2
MySQL
Curl

Опишу процедуру установки по пунктам:
1) Загрузить последнюю версию OpenCart можно с http://opencart-russia.ru/ Распаковать ее в директорию веб-сервера, например /var/www/.
Я использовал версии opencart-2.1.0.1-rs и opencart-2.1.0.2-rs
Сегодня 11.12.2016 пытаюсь установить opencart-2.3.0.2-rs на Ubuntu 16.04.1 LTS

2) Подключиться к MySQL базе данных, создать таблицу и пользователя с полными правами на созданную таблицу. Это можно сделать через phpmyadmin либо консоль выполнив следующие команды:

3) Переименовать два конфигурационных файла config-dist.php в config.php:

1| mv /var/www/config-dist.php /var/www/config.php
2| mv /var/www/admin/config-dist.php /var/www/admin/config.php

4) Установить владельца и группу www-data на все файлы и директории:

1| sudo chown www-data:www-data /var/www/ -R

5) Открыть в браузере адрес http://имя_сайта/install и следовать инструкциям. По завершению удалить директорию установки:

1| rm -rf /var/www/install/

В случае недостающий расширений при установке, установить их например командами:

1| sudo aptitude install php5-curl php5-mcrypt php5-gd
2| sudo php5enmod mcrypt
3| sudo service apache2 restart

Во всех случаях мне приходилось устанавливать недостающие расширения. Будьте внимательны, в моих случаях при установке этих пакетов ломались зависимости и opencart переставал корректно работать. Зависимости приходилось восстанавливать повторной установкой пакетов.
1| sudo aptitude install php5

В ubuntu 16.04 для установки php7.0 мне помогла эта статья

Также должны быть установлены права 0755 на следующие директории и файлы:
image/
image/cache/
image/data/
system/cache/
system/logs/
download/
config.php
admin/config.php

В версиях opencart-2.1.0.1-rs и opencart-2.1.0.2-rs есть баг в форме обратная связь при попытке отправить сообщение выскакивает следующее:
Notice: Error: MAIL FROM not accepted from server! in /var/www/html/system/library/mail.php on line 328

Я лечил по этому совету

Использование msmtp в качестве простого SMTP-клиента

Оценить моё творчество можно тут

Продолжение следует...

Сегодня 10.12.2017 пишу это уже, скорее себе в качестве шпаргалки.
Version 3.0.2.0 (rs.2)
мне не хватало ещё какого-то из этих пакетов:
sudo aptitude install php libapache2-mod-php php-mcrypt php-mysql
sudo aptitude install php-zip

Комментарии (19)

+1
MacLeod - 28 Январь, 2016 - 12:13
Изображение пользователя MacLeod.

В топку Apache, ну сколько можно =)

0
dyug - 28 Январь, 2016 - 14:33

есть предложения по замене? :-)

0
salt - 28 Январь, 2016 - 15:05
Изображение пользователя salt.

А что не так?

+1
MacLeod - 28 Январь, 2016 - 18:32
Изображение пользователя MacLeod.

Есть более эффективные фронтэнды, например nginx или h2o.
Нет, ну я понимаю, что память и vps'ки сейчас дешевые, но все же =)

0
salt - 28 Январь, 2016 - 18:53
Изображение пользователя salt.

Благодарю, изучим на досуге...

0
dyug - 29 Январь, 2016 - 15:17

Для домашней системы? Для овнклоуда или сеафиле, которые делаются для себя любимого?
На .... мне этот оверхеад в размере примерно 5-6 раз?

+2
MacLeod - 29 Январь, 2016 - 19:48
Изображение пользователя MacLeod.

Для домашней системы?
Если по теме, то OpenCart можно использовать для развлечения - раздать внукам кредитки и играть с ними в интернет-магазин =)

Для овнклоуда или сеафиле, которые делаются для себя любимого?
Наверняка, для себя любимого захочется поставить свежую версию, чтобы работало быстро, не тупило и не жрало лишние ресурсы на машине. То есть:
1. Ставим пакеты apt-get install nginx-full php-fpm php5-gd php5-json php5-mysql php5-curl нужное дописать.
2. Забираем и распаковываем архив с исходниками owncloud или seafile в определенный каталог.
3. Получаем бесплатный SSL-сертификат (опционально).
4. Копипастим конфиг отсюда для owncloud или отсюда для seafile. Вписываем в него имя домена, каталог с исходниками, путь к SSL-сертификату.
5. Перезагружаем nginx и радуемся.

На .... мне этот оверхеад в размере примерно 5-6 раз?
Вы уверены в правильности использования термИна?
Overhead (computing) - в информатике, накладные расходы как любая комбинация избыточных или побочных вычислений, использования памяти, пропускной способности или других ресурсов, необходимых для достижения определенной цели. Это особый случай инженерных накладных расходов.
Апач, который без тюнинга до посинения (да и с ним не особо радужно), по дефолту в простое забирает 200-300 Мб оперативы под used, жонглирует процессами и рекурсивно бегает по каталогам на каждом запросе - это и есть один большой оверхэд.

0
salt - 29 Январь, 2016 - 21:40
Изображение пользователя salt.

У меня это домашняя система. Гуру я в этой области не являюсь. Это мой первый опыт в данном направлении. А эта система просто работает, что мне от неё и нужно.

+1
MacLeod - 29 Январь, 2016 - 22:07
Изображение пользователя MacLeod.

Какая система?
Здесь набор компонентов:

входящий запрос <-> фронтэнд(1) <-> бэкэнд(2) <-> СУБД(3)
где
1 - принимает входящие запросы от браузера, передает бэкэнду по цепочке и обратно;
2 - выполняет нужный PHP скрипт из дистрибутива OpenCart;
3 - система управления базами данных;

и каждый выполняет свою отдельную роль.
Когда мы говорим о замене Apache на Nginx, подразумевается замена первого звена ( только лишь средства обработки клиентских подключений). Плюс php-fpm работает куда лучше, чем модуль апача mod_php, ибо это специально предназначенный менеджер процессов.

0
salt - 29 Январь, 2016 - 23:27
Изображение пользователя salt.

В любом случае - спасибо.

0
dyug - 31 Январь, 2016 - 17:33

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

0
MacLeod - 31 Январь, 2016 - 21:29
Изображение пользователя MacLeod.

Странно. Есть общепринятое в IT-сфере понятие. Вы трактуете его по-другому или есть собственное, индивидуальное и никому не известное определение?
Внимательно слушаю, что мне следует почитать. Про опыт в конкретном вопросе тоже было бы интересно, желательно аргументированно.

0
dyug - 31 Январь, 2016 - 23:43

Нет, я ничего не буду советовать читать. Каждый набивает себе шишки сам.

0
MacLeod - 1 Февраль, 2016 - 01:23
Изображение пользователя MacLeod.

Оу, да тут тайна, покрытая мраком... =)
Уважаемый, вы нагло вводите людей в заблуждение, играя словами и не говоря ничего конкретного.
Еще раз настоятельно прошу дать подробный комментарий по утверждению:
На .... мне этот оверхеад в размере примерно 5-6 раз?
А также поделиться знанием, в том числе, указать опыт (что именно вызвало проблемы, что использовалось в качестве бэкэнда, под какой нагрузкой, каков был оверхэд по ресурсам).

0
dyug - 1 Февраль, 2016 - 13:41

К сожалению, Вы не смогли продемонстрировать всех преимуществ Вашей супер идеи, так как забыли, что для того, что бы вышеупомянутые мной продукты работали ВСЕ равно нужен апач, а не нгих.
Ибо нгих используется как дополнительное средство разгрузки апача.
и не более.
Если Вам это не удалось понять, то я вряд ли смогу Вам лично помочь.

0
MacLeod - 1 Февраль, 2016 - 14:05
Изображение пользователя MacLeod.

что бы вышеупомянутые мной продукты работали ВСЕ равно нужен апач, а не нгих
Вы очень сильно заблуждаетесь. Апач вообще не нужен для работы каждого из перечисленных продуктов. Выше я написал схему установки по пунктам, никакого упоминания апача там нет.
Nginx уже долгое время является самостоятельным эффективным фронтэндом, который легко и без танцев с бубном интегрируется с большинством существующих бэкэндов. Про php-fpm речи даже нет - работает просто по дефолту.
Похоже, что как раз я Вам смогу помочь, если удастся прорваться через стену ваших предубеждений и консерватизма, и вы сможете осознать вышеописанное =)
З.Ы. Вы, безусловно, можете данную помощь не принять, но на техническом форуме было бы крайне неразумно выдавать предубеждения за опыт.

-1
dyug - 1 Февраль, 2016 - 14:09

Продолжайте в том же духе.

0
salt - 29 Январь, 2016 - 21:30
Изображение пользователя salt.

Да, это простая домашняя система. Гуру я не являюсь, посему пока работает эта система т.к. я её более-менее освоил и более менее отладил, а предлагаемые варианты надо оттестировать.

0
agasfer - 29 Январь, 2016 - 22:54
Изображение пользователя agasfer.

спасибо за наводку на nginx.. Заменил apache, сэкономил нерезиновой оперативки.. Хоть использовалось на домашней машине, по мелочи, но все ж заметно..

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

CAPTCHA на основе изображений
Введите цифры