Aktualizacja Magento z 1.7 do 1.9

43

Muszę zaktualizować swój sklep Magento z 1.7 do 1.9. Jestem bardzo nowy w Magento, SSH i MySQL. Zastanawiałem się tylko, jaki jest najprostszy sposób na uaktualnienie bez uszkodzenia mojej strony.

Adam Allen
źródło
2
To, co napisał Praful, jest za krótkie. Możesz mieć wiele problemów z rozszerzeniami, swoim motywem, brakującymi częściami w motywie, szczególnie ze wszystkimi klawiszami form_ke w wersji 1.8. Naprawdę, jeśli nie znasz swoich narzędzi, bądź bardzo ostrożny I NIE WYPRÓBUJ SWOJEGO ŚRODOWISKA NA ŻYWO!
Fabian Blechschmidt
Zrobiłem klon mojej strony internetowej przez cpannel (o nazwie: senore.com/ecommerce), a następnie zaktualizowałem stronę klonowania, aktualizacja działała (dobrze mówi się w backendie, że jest to teraz wersja 1.9.0.1), ale kiedy otwieram oryginalnie witryna (senore.com) żaden z linków nie działa, po prostu mówi błąd 404 i muszę dodać „/ ecommerce”, aby wyświetlić dowolne strony. Wiesz, dlaczego?
Adam Allen
Cześć Adam, jak myślę, nie utworzyłeś również klonu bazy danych. Z tego samego powodu musisz uruchomić oryginalną stronę na starej bazie danych i nowej wersji Magento 1.9 na nowo utworzonej bazie danych. Tak więc obie strony działają jednocześnie
Praful S Zaru
Prawie 25 000 wyświetleń i tylko 4 głosy w górę!?!?!?!?!?! ??
SR_Magento
Szczerze mówiąc, najlepsza opcja, aby zatrudnić profesjonalnego dostawcę usług Magento Upgrade, takiego jak magecomp.com/magento-upgrade-service.html
Gaurav Jain

Odpowiedzi:

50

Zaktualizuj mapę drogową dla CE 1.9.0.1 z 1.7

  1. Wykonaj kopię zapasową bieżącej bazy danych i bieżącego kodu 1.7. umieść plik Maintenance.flag w folderze kodu 1.7, aby przełączyć witrynę w tryb offline.
  2. Pobierz najnowszą wersję Magento ze strony http://www.magentocommerce.com/download
  3. Usuń wszystkie foldery i pliki z kodu 1.7 oprócz maintenance.flag(ale powinieneś mieć gdzieś kopię zapasową) i umieść wszystkie foldery i pliki z wersji 1.9.
  4. Teraz z wersji 1.7 scal następujące niestandardowe foldery z wersją 1.9
    • Społeczność app/code/community
    • Lokalny app/code/local
    • Głoska bezdźwięczna
    • twój motyw lub pakiet ( app/design/frontend/default/<your theme>lub app/design/frontend/<your package>)
    • niestandardowe foldery ze skórki (zarówno dla adminhtml, jak i frontendu).
    • skopiuj niestandardowe pliki XML z app/etc/modules/do bieżącegoapp/etc/modules/
    • dowolny niestandardowy folder motywu administratora z adminhtml/default/yourtheme.
    • skopiuj foldery niestandardowe z adminhtml/default/default/(1.7) do adminhtml / default / default / (1.9).
    • niestandardowe pliki js, jeśli istnieją app/js/.
  5. Teraz przejdź do app/etc/local.xml.Edycja bazy danych szczegóły. Wpisz swoją nazwę użytkownika bazy danych oraz hasło i nazwę bazy danych.
  6. Usuń maintenance.flagplik i sprawdź witrynę w przeglądarce. zrobione.
Pradeep Sanku
źródło
2
Nie zapomnij klucza szyfrowania starej wersji. Podczas uaktualniania witryny do nowej instalacji należy używać tego samego klucza szyfrowania
Mohamed23gharbi
Ta metoda działa dla mnie całkiem dobrze. Jednak niektóre rozszerzenia mogą wymagać ponownej instalacji.
yldziner
12
Powiedziałbym, że nie jest to kompletny przewodnik, jak to zrobić. Będzie działał w niektórych szczególnych przypadkach, ale jeśli Twój niestandardowy motyw zmienił na przykład stronę logowania - Twoi klienci nie będą już mogli się zalogować. Zobacz: stackoverflow.com/questions/20565688/... Ponadto wzmianka o konserwacji.flag sugeruje, że można to robić na żywo. Nigdy nie aktualizuj Magento w środowisku na żywo. Zawsze najpierw testuj na dev / staging, aby złapać przypadki takie jak ta, o której wspomniałem, ponieważ jest o wiele więcej rzeczy, które mogą pójść nie tak.
Wiktor Jarka,
1
Nie zapomnij również dodać klawiszy formularzy do nowego szablonu, w przeciwnym razie nie będziesz mógł używać żadnej z tych formularzy. Aby uzyskać więcej informacji, zobacz stackoverflow.com/a/20702053/564338 .
Daniel West,
7

Przede wszystkim utwórz bazę danych taką samą, jak bieżąca magento 1.7. Następnie pobierz magento 1.9.0.1 ze strony http://www.magentocommerce.com/download

Teraz uruchom instalację magento 1.9 i wybierz bazę danych swojej starej strony (magento 1.7.0.2)

Teraz możesz przenieść swój motyw i skórkę ze starej wersji na nową. Następnie po sprawdzeniu rozszerzenia jednej ze stron trzecich ze starej na nową. Zrobiłem to i będzie dla mnie działać.

Praful S Zaru
źródło
4

Instrukcja aktualizacji Magento 1.x przy użyciu SSH lub wiersza poleceń:

1) Przejdź do katalogu głównego Magento

cd /path/to/your/magento/folder

2) Włącz tryb konserwacji dla swojej strony Magento

W tym celu musisz utworzyć pusty plik o nazwie maintenance.flagw katalogu głównym Magento.

touch maintenance.flag

3) Wyczyść pamięć podręczną i sesje

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

4) Sprawdź kompilację i wyłącz ją, jeśli jest włączona

Sprawdź status kompilatora

php -f shell/compiler.php -- state

Jeśli Compiler Statustak Disabled, możesz pominąć ten krok i przejść do następnego.

Jeśli Compiler Statustak Enabled, musisz go wyłączyć za pomocą następującego polecenia:

php -f shell/compiler.php -- disable

5) Zezwól na zapisywanie wszystkich plików i folderów Magento

chmod -R 777 .

6) Daj plik magowi uprawnień 550

Plik Mage to plik skryptu powłoki. Z uprawnieniami 550, po prostu sprawiają, że plik jest nie do zapisu + do odczytu i wykonywania tylko przez użytkownika i grupę.

chmod 550 ./mage

7) Zmień ustawienia konfiguracji na stabilne

./mage config-set preferred_state stable

8) Uaktualnij Magento

Możesz wyświetlić listę wszystkich zainstalowanych pakietów za pomocą następującego polecenia:

./mage list-installed

Możesz wyświetlić listę wszystkich pakietów, które można aktualizować, za pomocą następującego polecenia:

./mage list-upgrades

Następujące polecenie zaktualizuje wszystkie pakiety:

./mage upgrade-all --force

Ukończenie aktualizacji zajmie trochę czasu.

9) Dane Reindex

Po zakończeniu aktualizacji powinniśmy ponownie zindeksować wszystkie dane.

php shell/indexer.php reindexall

10) Następnie wyczyść pamięć podręczną i sesję ponownie.

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

11) Włącz kompilację tylko wtedy, gdy była włączona przed aktualizacją

Sprawdź krok 4) powyżej.

Jeśli kompilacja nie została włączona w kroku 4), możesz pominąć ten krok i przejść do następnego kroku.

Jeśli kompilacja została włączona dla Twojej witryny i została wyłączona w kroku 4), musisz ją włączyć za pomocą następującego polecenia:

php -f shell/compiler.php -- enable

12) Zmień uprawnienia do plików

Przed aktualizacją zmieniliśmy uprawnienia do wszystkich plików i folderów na 777. Powinieneś także udzielić odpowiedniego pozwolenia na wszystkie pliki i foldery na swojej stronie Magento.

Konwertuj uprawnienia do plików na 644 i uprawnienia do folderów na 755

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

Nadaj pełne uprawnienia do odczytu i zapisu, tj. 777 folderom var i media.

chmod -R 777 var media

Daj 550 uprawnienia do pliku skryptu powłoki maga

chmod 550 ./mage

13) Sprawdź wersję zainstalowanych pakietów

Sprawdź wersje zainstalowanych pakietów. Pakiety powinny pokazywać najnowszą wersję, ponieważ są już zaktualizowane.

./mage list-installed

14) Lista pakietów, które można aktualizować

Wymień pakiety, które można aktualizować (pakiety wymagające aktualizacji). Powinno to spowodować wyświetlenie komunikatu Brak dostępnych aktualizacji, ponieważ wszystkie pakiety zostały już zaktualizowane do najnowszej wersji.

./mage list-upgrades

15) Wyłącz tryb konserwacji, aby witryna działała

rm -f maintenance.flag

Spowoduje to usunięcie pliku, maintenance.flaga następnie witryna będzie ponownie dostępna.

Możesz teraz zalogować się do administratora Magento i zobaczyć wersję Magento wyświetloną w sekcji stopki. Powinien zawierać najnowszy numer wersji.

Źródło: Magento 1.x - Aktualizacja / aktualizacja do najnowszej wersji za pośrednictwem przeglądarki i wiersza poleceń

Mukesh Chapagain
źródło
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 

Upewnij się, że należy uwzględnić rozszerzenia innych firm i lokalne dostosowania, wykonaj odpowiednią kopię zapasową.

TBI Infotech
źródło
17
Nigdy nie używaj Magento Connect Manager ... Jest z nim wiele problemów ...
Simon
1
Również podczas aktualizacji za pomocą Connect nie będziesz wiedział, jakie zmiany to zrobił.
Mohamed23gharbi
1
@ Simon (lub ktoś inny) czy możesz wyjaśnić swoje oświadczenie, maybee ze źródłami? Zrobiłem testową aktualizację z 1.7 do 1.9 wszystko działa dobrze.
Akif
@Akif po prostu google za to. Zobacz np. Integer-net.com/… lub magento.stackexchange.com/q/40359/142 .
Simon
1
@ Simon dzięki, nie rozumiem, dlaczego nie należy go używać na podstawie argumentów pierwszego linku, biorąc pod uwagę, że wiadomo, co on lub ona robi. Dla nieprofesjonalistów uważam, że większość argumentów jest słuszna. Mam nadzieję, że to wyjaśnia twoje oświadczenie +12 na przyszłość. Powinno być bardziej; „Nie używaj go, chyba że wiesz, co robisz”.
Akif
1

Dlaczego nikt nie sugeruje najłatwiejszego sposobu - jak wymaga tego pytanie.

Po prostu idź do System >> Configuration >> Connect Manager

i użyj klucza http://connect20.magentocommerce.com/community/mage_all_latest

Magento1 Connect Manager

a jeśli potrzebujesz konkretnej wersji, możesz ją pobrać i przesłać jako pakiet w tym samym magento connect

Aktualizacja pakietu Magento Connect Manager

Kumar A.
źródło
+1 W ten sposób dosłownie aktualizuję wszystkie trzy nasze osobne instalacje Magento. Gdyby nie sprawdzanie wszystkiego i dokładne testowanie, dosłownie zajęłoby to może 20 sekund dla każdej aktualizacji. Zaczęliśmy od wersji 1.7 i łatwo (oprócz form_keys dla wersji 1.8) aktualizowaliśmy stopniowo do wersji 1.9.4.0. Wystarczy wyczyścić katalogi pkginfo / i var / package przed rozpoczęciem procesu aktualizacji za pośrednictwem Magento Connect.
MagentoAaron
0

Wykonaj następujące kroki, aby zaktualizować swój sklep Magento 1.7 do Magento 1.9:

  1. Kompilacja Magento z System> Narzędzia> Kompilacja> Wyłącz

  2. Magento Cache z System> Zarządzanie pamięcią podręczną> Wybierz wszystko> Akcja: Wyłącz> Prześlij

  3. Usuń wszystkie pliki i foldery z katalogu Magento v1.7 (pamiętaj, aby zachować kopię zapasową w bezpiecznym miejscu) i umieść wszystkie pliki i foldery z pakietu Magento v1.9.x.

  4. Otwórz swoją ulubioną przeglądarkę internetową, przejdź do linku. Zostaniesz poproszony o zainstalowanie nowego sklepu Magento v1.9.x, ale nie martw się, kontynuuj i kiedy dojdziesz do strony konfiguracji. Wypełnij je tymi samymi informacjami, które były używane w poprzednim sklepie Magento v1.7, w tym Nazwa hosta serwera SQL DB, Nazwa SQL DB, Nazwa użytkownika SQL Server, Hasło SQL Server, Podstawowy adres URL i Ścieżka administratora.

  5. Po zakończeniu instalacji nie odwiedzaj strony frontend ani backend. Z kopii zapasowej plików i folderów Magento v1.7 skopiuj i scal następujące pliki i foldery do nowego katalogu sklepu Magento v1.9.x:

    • Folder społeczności: ROOT> aplikacja> kod> społeczność

    • Folder lokalny: ROOT> aplikacja> kod> lokalny

    • Folder multimediów w katalogu głównym: ROOT> media

    • Twój folder motywów: ROOT> aplikacja> projekt> interfejs> domyślny (nazwa pakietu)> „twój_theme” (jeśli używasz „domyślnego” pakietu dla swojego motywu, po prostu skopiuj folder motywu, w przeciwnym razie musisz skopiować cały pakiet zawierający motyw teczka)

    • Folder skórki w katalogu głównym: ROOT> skórka

    • Niestandardowe pliki XML modułu: ROOT> aplikacja> etc> moduły> „twoje_standardowe_pliky_XML”

    • Folder motywów administratora: ROOT> aplikacja> projekt> adminhtml> domyślny

    • Niestandardowy folder JS: ROOT> aplikacja> js

    • Teraz na koniec usuń wszystko z ROOT> var> cache i z ROOT> var> session, aby wyczyścić wszystkie sesje i cache.

Syed Muneeb Ul Hasan
źródło