Na jednym z serwerów używam systemu operacyjnego CentOs standardowo z zainstalowanym Apache z obsługą PHP i MySQL. Aktualizacja PHP do aktualnej wersji z wykorzystaniem yum nie jest zbyt skomplikowane.
Na początek należy rozpocząć od aktualizacji bazy repozytorium Atomic:
wget -q -O - http://www.atomicorp.com/installers/atomic.sh | sh
wget to program, który służy do pobierania plików.
- q (–quiet) – działa po cichu;), nie wypisuje nic na ekranie
- O – (–output-document) – standardowo po tym parametrze wpadałoby podać nazwę pliku do jakiego ma być zapisane pobierane źródło. Istotny tutaj jest myślnik po parametrze. Oznacza to, że to co zostanie pobrane przez program zostanie przekazane na domyślne wyjście, w tym wypadku na ekran, a następnie za pomocą znaku | (pipe) zostanie przekazane do wykonania w bashu.
Właściwa aktualizacja PHP odbywa się po wykonaniu komendy
yum update php
Można również aktualizację wykonać wpisując:
yum upgrade
Wówczas aktualizowane będą wszystkie pakiety, w tym PHP.
W moim przypadku pojawił się następujący błąd w trakcie tego procesu:
php−sqlite2−5.1.6−200705230938.i386 from installed has depsolving problems −−> Missing Dependency: php <= 5.2.0 is needed by package php−sqlite2−5.1.6−200705230938.i386 (installed) Error: Missing Dependency: php <= 5.2.0 is needed by package php−sqlite2−5.1.6−200705230938.i386 (installed)
Aby dokończyć instalacje musiałem usunąć pakiet php-sqlite2 i ponownie rozpocząć aktualizację
yum remove php−sqlite2 yum upgrade
Po pomyślnej aktualizacji pozostaje tylko restart serwera Apache
service httpd restart
lub
/etc/init.d/httpd restart
Ażeby sprawdzić aktualną wersję PHP na swoim serwerze należy uruchomić skrypt php o takiej treści
<?php phpinfo(); ?>
lub z linii poleceń
php −v