Улучшение Magento с 1,7 до 1,9


43

Мне нужно обновить магазин Magento с 1,7 до 1,9. Я очень новичок в Magento, SSH и MySQL. Мне было просто интересно, какой самый простой способ обновить, не ломая мой сайт.


2
То, что написал Прафул, слишком коротко. У вас может быть много проблем с расширениями, вашей темой, отсутствующими частями в теме, особенно со всеми form_keys в версии 1.8. Действительно, если вы не знаете своих инструментов, будьте очень осторожны и НЕ ПОПРОБУЙТЕ СВОЮ ЖИЗНЕННУЮ СРЕДУ!
Фабиан Блехшмидт

я сделал клон моего сайта через cpannel (называемый: senore.com/ecommerce), а затем обновил сайт клона, обновление сработало (ну, в бэкэнде говорится, что теперь это версия 1.9.0.1), однако, когда я открываю свой оригинальный веб-сайт (senore.com) ни одна из ссылок не работает, он просто говорит об ошибке 404, и мне нужно добавить «/ ecommerce» для просмотра любых страниц. Есть идеи почему ??
Адам Аллен

Привет Адам, я думаю, ты тоже не создал клон базы данных. Для того же вам нужно запустить ваш оригинальный сайт на старой базе данных и новый magento 1.9 на вновь созданной базе данных. Так что оба сайта работают одновременно
Praful S Zaru

Почти 25 тысяч просмотров и только 4 голоса!!!!!?!?!?! ??
SR_Magento

Честно говоря, лучший вариант - нанять профессионального поставщика услуг по обновлению Magento, такого как magecomp.com/magento-upgrade-service.html
Jain

Ответы:


50

Обновление Roadmap для CE 1.9.0.1 с 1.7

  1. Сделайте резервную копию текущей базы данных и текущего кода 1.7. Поместите файл maintenance.flag в папку с кодом 1.7, чтобы перевести сайт в автономный режим.
  2. Загрузите последнюю версию magento с http://www.magentocommerce.com/download
  3. Удалите все папки и файлы из вашего кода 1.7 кроме maintenance.flag(но у вас должно быть где-то резервное копирование) и поместите все папки и файлы из 1.9.
  4. Теперь из вашей 1.7 объедините ваши следующие пользовательские папки в 1.9
    • сообщество app/code/community
    • Местный app/code/local
    • СМИ
    • ваша тема или пакет ( app/design/frontend/default/<your theme>или app/design/frontend/<your package>)
    • пользовательские папки из скина (как для adminhtml, так и для внешнего интерфейса).
    • скопировать ваши пользовательские файлы XML из app/etc/modules/текущегоapp/etc/modules/
    • любая пользовательская папка с темой администратора adminhtml/default/yourtheme.
    • скопируйте ваши пользовательские папки из adminhtml/default/default/(1.7) в adminhtml / default / default / (1.9).
    • пользовательские файлы JS, если таковые имеются app/js/.
  5. Теперь перейдите в app/etc/local.xmlбазу данных .Edit их. Введите имя пользователя, пароль и имя базы данных.
  6. Удалите maintenance.flagфайл и проверьте сайт в браузере. сделано.

2
Не забудьте ключ шифрования старой версии. При обновлении сайта до новой установки обязательно используйте тот же ключ шифрования
Mohamed23gharbi

Этот метод работает довольно хорошо для меня. Некоторые расширения, возможно, потребуется переустановить.
yldziner

12
Я бы сказал, что это не полное руководство о том, как это сделать. Это будет работать в некоторых особых случаях, но если ваша пользовательская тема, например, изменила страницу входа - ваши клиенты больше не смогут войти в систему. См .: stackoverflow.com/questions/20565688/… Кроме того, упоминание maintenance.flag предполагает, что это нормально делать это вживую. Никогда не обновляйте Magento в реальной среде. Всегда сначала тестируйте на dev / staging, чтобы поймать случаи, подобные упомянутому мной, потому что есть еще много чего, что может пойти не так.
Виктор Ярка

1
Также не забудьте добавить ключи формы в новый шаблон, иначе вы не сможете использовать любую из форм. См. Stackoverflow.com/a/20702053/564338 для получения дополнительной информации.
Даниэль Вест


7

Прежде всего, создайте базу данных, аналогичную текущей версии magento 1.7. Затем загрузите magento 1.9.0.1 с http://www.magentocommerce.com/download

Теперь запустите установку magento 1.9 и выберите базу данных вашего старого сайта (magento 1.7.0.2).

Теперь вы можете перенести свою тему и скин со старой версии на новую. Затем после проверки по одному стороннему расширению от старого к новому. Я сделал это, и это будет работать для меня.


4

Инструкция по обновлению Magento 1.x с использованием SSH или командной строки:

1) Перейдите в корневой каталог Magento.

cd /path/to/your/magento/folder

2) Включить режим обслуживания для вашего сайта Magento

Для этого вам нужно создать пустой файл с именем maintenance.flagв вашем корневом каталоге Magento.

touch maintenance.flag

3) Очистить кэш и сессии

rm -rf var/cache/* var/session/*

4) Проверьте компиляцию и отключите ее, если она включена

Проверьте статус компилятора

php -f shell/compiler.php -- state

Если Compiler Statusесть, Disabledвы можете пропустить этот шаг и перейти к следующему шагу.

Если Compiler Statusесть, Enabledвы должны отключить его с помощью следующей команды:

php -f shell/compiler.php -- disable

5) Дайте разрешение на запись для всех файлов и папок Magento

chmod -R 777 .

6) Дайте 550 разрешений файлу мага

Mage file - это файл сценария оболочки. С разрешением 550 мы просто делаем файл недоступным для записи + читаемым и исполняемым только для пользователей и групп.

chmod 550 ./mage

7) Измените настройки конфигурации на стабильные

./mage config-set preferred_state stable

8) Обновление Magento

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

./mage list-installed

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

./mage list-upgrades

Следующая команда обновит все пакеты:

./mage upgrade-all --force

Для завершения обновления потребуется некоторое время.

9) Переиндексировать данные

После завершения обновления мы должны переиндексировать все данные.

php shell/indexer.php reindexall

10) Затем очистите кеш и снова сессию.

rm -rf var/cache/* var/session/*

11) Включать компиляцию, только если она была включена перед обновлением

Проверьте шаг 4) выше.

Если на шаге 4) компиляция не была включена, вы можете пропустить этот шаг и перейти к следующему шагу.

Если компиляция была включена для вашего веб-сайта, и вы отключили ее на шаге 4), вам необходимо включить ее с помощью следующей команды:

php -f shell/compiler.php -- enable

12) Изменить разрешение файлов

Перед обновлением мы изменили разрешение всех файлов и папок на 777. Вы также должны дать соответствующее разрешение всем файлам и папкам вашего сайта Magento.

Конвертировать файлы с разрешением 644 и папки с разрешением 755

find . -type f -exec chmod 644 {} \; && find . -type d -exec chmod 755 {} \;

Дайте разрешение на чтение и запись, т.е. 777 для папок var и media.

chmod -R 777 var media

Дайте 550 разрешений на создание файла сценария оболочки

chmod 550 ./mage

13) Проверьте версию установленных пакетов

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

./mage list-installed

14) Список обновляемых пакетов

Перечислите обновляемые пакеты (пакеты, которые требуют обновления). Это должно привести к появлению сообщения о недоступности обновлений, поскольку все пакеты уже обновлены до последней версии.

./mage list-upgrades

15) Отключить режим обслуживания, чтобы сделать сайт живым

rm -f maintenance.flag

Это приведет к удалению файла, maintenance.flagпосле чего сайт снова будет доступен.

Теперь вы можете войти в систему администратора Magento и увидеть версию Magento, отображаемую в разделе нижнего колонтитула. Он должен показывать номер последней версии.

Источник: Magento 1.x - обновление / обновление до последней версии через браузер и командную строку


3
Current Version Magento CE 1.7.0.2

Admin panel -> System -> Magento Connect -> Magento Connect Manager

Check for Upgrades

Mage_All_Latest -> select Upgrade to 1.9.0.1 

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


17
Никогда не используйте Magento Connect Manager ... Есть много проблем с ним ...
Саймон

1
Также при обновлении с Connect вы не будете знать, какие модификации он сделал.
Мохамед23гарби

1
@ Симон (или кто-то еще) не могли бы вы уточнить свой статус, может быть, с источниками? Я сделал тестовое обновление с 1.7 до 1.9 все отлично работает.
Акиф

@ Акиф просто гугл за это. См , например , integer-net.com/... или magento.stackexchange.com/q/40359/142 .
Саймон

1
@ Симон, спасибо, я не понимаю, почему нельзя использовать его, основываясь на аргументах первой ссылки, учитывая, что он знает, что он или она делает. Для непрофессионалов я думаю, что большинство аргументов верны. Я надеюсь, что это прояснит ваше заявление с +12 для дальнейшего использования. Это должно быть больше похоже; «Не используйте его, если не знаете, что делаете».
Акиф

1

Почему никому не предлагается самый простой способ - как того требует вопрос.

Просто иди в System >> Configuration >> Connect Manager

и используйте ключ http://connect20.magentocommerce.com/community/mage_all_latest

Magento1 Connect Manager

и если вам нужна конкретная версия, вы можете скачать ее и загрузить как пакет в том же magento connect

Обновление пакета Magento Connect Manager


+1 Это буквально то, как я обновляю все три наших отдельных установки Magento. Если бы я не проверял и не все тщательно проверял, буквально для каждого обновления потребовалось бы, возможно, 20 секунд. Мы начали с 1.7 и легко (кроме form_keys для 1.8) обновились постепенно до 1.9.4.0. Просто нужно очистить каталоги pkginfo / и var / package перед началом процесса обновления через Magento Connect.
MagentoAaron

0

Выполните следующие действия, чтобы обновить магазин Magento 1.7 до Magento 1.9:

  1. Компиляция Magento из системы> Инструменты> Компиляция> Отключить

  2. Magento Cache из Система> Управление кэшем> Выбрать все> Действие: отключить> Отправить

  3. Удалите все файлы и папки из каталога Magento v1.7 (не забудьте сохранить резервную копию) и поместите все файлы и папки из пакета Magento v1.9.x.

  4. Откройте ваш любимый веб-браузер, перейдите по ссылке. Вам будет предложено установить свежий магазин Magento v1.9.x, но не беспокойтесь, продолжайте и когда вы доберетесь до страницы конфигурации. Заполните его той же информацией, которую вы использовали для предыдущего хранилища Magento v1.7, включая имя хоста сервера БД SQL, имя базы данных SQL, имя пользователя SQL Server, пароль SQL Server, базовый URL и путь администратора.

  5. После завершения установки не заходите на страницу внешнего интерфейса или бэкэнда. Из резервной копии файлов и папок Magento v1.7 скопируйте и объедините следующие файлы и папки в новый каталог магазина Magento v1.9.x:

    • Папка сообщества: ROOT> приложение> код> сообщество

    • Локальная папка: ROOT> приложение> код> локальная

    • Папка мультимедиа в корневом каталоге: ROOT> media

    • Папка вашей темы: ROOT> приложение> дизайн> внешний интерфейс> default (имя пакета)> «your_theme» (если вы используете пакет «default» для своей темы, просто скопируйте папку темы, в противном случае вам необходимо скопировать весь пакет, включающий вашу тему папка)

    • Папка Skin в корневом каталоге: ROOT> кожа

    • Пользовательские XML-файлы модуля: ROOT> приложение> и т. Д.> Модули> «your_custom_XML_files»

    • Папка с темами администратора: ROOT> app> design> adminhtml> default

    • Пользовательская папка JS: ROOT> app> js

    • Теперь, наконец, удалите все из ROOT> var> cache и из ROOT> var> session, чтобы очистить все сессии и кеш.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.