Оновлення Magento з 1,7 до 1,9


43

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


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

Я зробив клон свого веб-сайту через cpannel (званий: senore.com/ecommerce), а потім модернізував сайт-клон, оновлення працювало (добре, у бекенде це написано, що це версія 1.9.0.1), але коли я відкриваю оригінально веб-сайт (senore.com) жодне з посилань не працює, просто скажіть 404 помилка, і я повинен додати "/ електронну комерцію", щоб переглянути будь-які сторінки. Будь-яка ідея, чому ??
Адам Аллен

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

Майже 25 тис. Переглядів і лише 4 голоси нагорі!?!?!?!?!?!
SR_Magento

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

Відповіді:


50

Оновити дорожню карту на CE 1.9.0.1 з 1.7

  1. Візьміть резервну копію поточної бази даних та поточного коду 1.7. розмістіть файл vzdrže.flag всередині папки коду 1.7, щоб розмістити веб-сайт в офлайні.
  2. Завантажте найновіший магент з 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>)
    • спеціальні папки зі шкіри (як для адміністратора, так і для фронта).
    • скопіюйте власні файли 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.Задайте інформацію про базу даних. Введіть ім’я користувача та пароль вашої бази даних та ім'я бази даних.
  6. Видаліть maintenance.flagфайл і перевірте сайт у браузері. це робиться.

2
Не забудьте ключ шифрування старої версії. Під час оновлення сайту до нової інсталяції обов’язково використовуйте той самий ключ шифрування
Mohamed23gharbi

Цей метод для мене працює досить добре. Деякі розширення, можливо, потрібно буде перевстановити.
yldziner

12
Я б сказав, що це не повний посібник, як це зробити. Він буде працювати в деяких конкретних випадках, але якщо ваша власна тема, наприклад, змінила сторінку входу - ваші клієнти більше не зможуть увійти. Див.: Stackoverflow.com/questions/20565688/… Також згадування про підтримку support.flag пропонує це це добре робити в прямому ефірі. Ніколи не робіть оновлення Magento в живих умовах. Завжди випробовуйте на розробці / постановці спочатку, щоб зловити такі випадки, як згаданий мною, тому що існує так багато іншого, що може піти не так.
Wiktor Jarka

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 файлів мага дозволу

Файл маг - це сценарій файлу оболонки. Маючи дозвіл 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 дозвіл на створення файлу скрипта оболонки mag

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 ви не знатимете, які зміни було зроблено.
Mohamed23gharbi

1
@Simon (чи хтось інший) ви могли б уточнити свою позицію, можливо, з джерелами? Я зробив тестове оновлення з 1,7 до 1,9, все працює добре.
Акіф

@Akif просто google для цього. Див , наприклад , 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

Оновлення пакета менеджера Magento Connect


+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 із системи> Керування кешами> Виберіть все> Дія: Вимкнути> Надіслати

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

  4. Відкрийте улюблений веб-браузер, перейдіть за своїм посиланням. Вам буде запропоновано встановити свіжий магазин Magento v1.9.x, але не хвилюйтесь, продовжуйте роботу та коли ви перейдете на сторінку Конфігурація. Наповніть його тією ж інформацією, яку ви використовували для попереднього магазину Magento v1.7, який включає ім'я хоста SQL DB Server, ім'я SQL DB, ім’я користувача SQL Server, пароль SQL сервера, базову URL-адресу та шлях адміністратора.

  5. Закінчивши встановлення, не відвідуйте сторінку фронтену чи бекенда. З резервного копіювання файлів і папок Magento v1.7 скопіюйте та об'єднайте наступні файли та папки у новий каталог магазину Magento v1.9.x:

    • Папка спільноти: ROOT> додаток> код> спільнота

    • Локальна папка: ROOT> додаток> код> локальна

    • Папка медіа у кореневому каталозі: ROOT> media

    • Ваша папка тем: ROOT> додаток> дизайн> frontend> за замовчуванням (назва пакету)> «your_theme» (Якщо ви використовуєте пакет «за замовчуванням» для своєї теми, тоді просто скопіюйте папку з темами, інакше вам потрібно скопіювати весь пакет, що включає вашу тему папка)

    • Шкірна папка в кореневому каталозі: ROOT> skin

    • Спеціальні файли XML модуля: ROOT> додаток> тощо> модулі> "your_custom_XML_files"

    • Тема адміністратора: ROOT> додаток> дизайн> adminhtml> за замовчуванням

    • Спеціальна папка JS: ROOT> app> js

    • Тепер, нарешті, видаліть усе з ROOT> var> кеш і з ROOT> var> сесій, щоб очистити всі сеанси та кеш.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.