Ulepszenie w stosunku do innej odpowiedzi Webtatic:
1. Korzystając z przewodnika na http://www.webtatic.com/packages/php54/ :
rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm
2) Najpierw musisz zobaczyć, jakie istniejące zainstalowane pakiety wymagają wymiany, możesz to zrobić, używając powłoki yum do połączenia usuwania php-common i instalacji php54w-common w jednej transakcji (więc współdzielone zależności nie są usuwane)
yum shell
> remove php-common
> install php54w-common
> run
…
Is this ok [y/N]: n
Nie mów „y” do wyników, ale zwróć uwagę na wszystkie pakiety wymienione w „Usuwanie zależności”, np
Removing for dependencies:
php
php-cli
php-pear
php-pecl-memcache
php-mysql
Jeśli na tej liście znajdują się inne pakiety niż php *, nie możesz płynnie przejść na Webtatic PHP 5.4, ale będziesz musiał zbadać alternatywy. Webtatic ma pakiety zastępcze dla wszystkich podstawowych pakietów php (potwierdzenia znajdują się w paczkach wymienionych na stronie, do której prowadzi link w punkcie 1.), więc nie powinno być problemów, chyba że użyjesz innych repozytoriów innych firm, które mają zainstalowane pakiety zależne od konkretnej wersji php zainstalowany.
Przez resztę instalacji (nadal w yum shell), po prostu usuwasz te pakiety i instalujesz ich odpowiedniki php54w- *:
> remove php-common php php-cli php-pear php-pecl-memcache php-mysql
> install php54w-common php54w php54w-cli php54w-pear php54w-pecl-memcache php54w-mysql
> run
…
Is this ok [y/N]: y
Powinieneś wtedy zobaczyć tylko pakiety, które ustawiłeś do usunięcia i zainstalowania na liście, i możesz potwierdzić instalację, aby przełączyć. Wszelkie usługi aktualnie uruchomione z załadowanym php będą musiały zostać zrestartowane, na przykład httpd lub php-fpm.
Ponieważ jest to „płynne”, wszelkie zmiany oprogramowania zachodzące, gdy użytkownicy mogą uzyskać dostęp do strony internetowej, powinny być w pełni zrozumiałe. Udostępniane biblioteki usuwane i dodawane, gdy proces jeszcze ich nie załadował, mogą potencjalnie zostać załadowane, gdy biblioteki udostępnionej nie ma. Lepiej jest przeprowadzać aktualizacje oprogramowania w trybie offline, a najlepiej najpierw przetestować je na maszynie innej niż produkcyjna, aby sprawdzić, czy proces działa zgodnie z oczekiwaniami.
3) Aby przełączyć się na hipotetyczny podstawowy pakiet php54 CentOS (CentOS 5 używał prefiksu php53), wystarczy uruchomić powyższe kroki, zastępując usunięcie php usunięciem php54w, i instalację php54w instalacją php54, np.
yum shell
> remove php54w-common
> install php54-common
> run
…
Is this ok [y/N]: n
…
> remove php54w-common php54w php54w-cli php54w-pear php54w-pecl-memcache php54w-mysql
> install php54-common php54 php54-cli php54-pear php54-pecl-memcache php54-mysql
> run
Is this ok [y/N]: y
Jednak jeśli chodzi o przejście na hipotetyczną bazę php54, prawdopodobnie nie będzie alternatyw dla niektórych pakietów (np. Nie było rozszerzenia php53-pecl-memcache w CentOS 5), a Webtatic ma pakiety, które nie są dostępne w bazie CentOS (np. Php54w -pecl-zendopcache). Jeśli ich brakuje, zwykle nie masz innej opcji niż bezpośrednie użycie pecl do ich zainstalowania.
4 Każda aktualizacja PHP może wprowadzać błędy, a strony internetowe powinny być ponownie testowane. Nie jest to specyficzne dla Webtatic, ale ogólny pomysł, że nowe funkcje wprowadzają nowe błędy.
W przeciwieństwie do repozytorium Remiego w zaakceptowanej odpowiedzi, repozytorium Webtatic EL6 nigdy nie używa takich samych nazw pakietów jak repozytoria podstawowe CentOS, więc nie zastąpi instalacji / aktualizacji pakietów, na które nie zamierzasz się przełączać, i jako takie jest domyślnie włączone.
Oświadczenie: Jestem właścicielem / opiekunem Webtatic