Cara Upgrade PHP ke Versi PHP 7.3 di Nginx

Posted by

PHP 7.3 sudah released dan saatnya untuk melakukan upgrade PHP yang ada di Nginx anda dengan versi PHP 7.3 untuk meningkatkan performa web yang anda miliki.

Apalagi jika anda menggunakan CMS seperti WordPress misalnya, mengupgrade versi PHP anda ke versi PHP 7.3 tentunya akan menjadi speed booster bagi web anda.

Satu hal yang perlu anda ketahui, cara yang akan saya bahas adalah cara yang saya dapat dari hasil berbagai eksperimen sebelumnya.

Jika anda mendapatkan atau mengetahui referensi cara yang lebih baik dan terstruktur, anda bisa menggunakan cara tersebut dan mungkin bisa berbagi dengan kami.

[easy-tweet tweet=”Salah satu cara untuk meningkatkan performa kecepatan website adalah dengan melakukan upgrade PHP ke versi terbaru.” user=”omgoblog”]

Sebelum Melakukan Upgrade

Anda sebaiknya melakukan backup terlebih dahulu sebelum anda melakukan upgrade PHP anda ke PHP 7.3 seperti backup web maupun backup server system anda misalnya.

Selanjutnya cek dan catat PHP extension package yang terinstall di system anda jika anda mengingatnya.

Mengecek PHP Package

Jika anda menggunakan WordPress, maka anda bisa langsung melakukan instalasi PHP dengan ekstensi / module general yang akan saya bahas pada poin selanjutnya.

Namun jika anda tidak menggunakan WordPress, atau anda menginstall ekstensi tertentu sebelumnya, maka cek ekstensi PHP yang terinstall di system dengan command berikut ini.


php -i | grep -e "Additional .ini files parsed"
 

Dengan hasil seperti berikut ini.

php -i | grep -e "Additional .ini files parsed"
Additional .ini files parsed => /etc/php/7.2/cli/conf.d/10-mysqlnd.ini,
 

Anda bisa lihat kalau yang di tampilkan hasil di atas belum lengkap, oleh karena itu saya akan menggunakan alamat direktori PHP module tersebut untuk melihat hasil lebih lanjut dengan command berikut ini.


php -i | grep -e "/etc/php/7.2/cli/conf.d/"
 

Jika anda penasaran kenapa saya tidak langsung menggunakan command ini, karena bisa jadi alamat module anda berbeda dengan saya.

Oleh karena itu, kita perlu mengecek terlebih dahulu direktori dari PHP Module tersebut.

Dan hasilnya bisa anda lihat seperti berikut ini.

php -i | grep -e "/etc/php/7.2/cli/conf.d/"
Additional .ini files parsed => /etc/php/7.2/cli/conf.d/10-mysqlnd.ini,
/etc/php/7.2/cli/conf.d/10-opcache.ini,
/etc/php/7.2/cli/conf.d/10-pdo.ini,
/etc/php/7.2/cli/conf.d/15-xml.ini,
/etc/php/7.2/cli/conf.d/20-calendar.ini,
/etc/php/7.2/cli/conf.d/20-ctype.ini,
/etc/php/7.2/cli/conf.d/20-curl.ini,
/etc/php/7.2/cli/conf.d/20-dom.ini,
/etc/php/7.2/cli/conf.d/20-exif.ini,
/etc/php/7.2/cli/conf.d/20-fileinfo.ini,
/etc/php/7.2/cli/conf.d/20-ftp.ini,
/etc/php/7.2/cli/conf.d/20-gd.ini,
/etc/php/7.2/cli/conf.d/20-gettext.ini,
/etc/php/7.2/cli/conf.d/20-iconv.ini,
/etc/php/7.2/cli/conf.d/20-igbinary.ini,
/etc/php/7.2/cli/conf.d/20-imagick.ini,
/etc/php/7.2/cli/conf.d/20-imap.ini,
/etc/php/7.2/cli/conf.d/20-json.ini,
/etc/php/7.2/cli/conf.d/20-mbstring.ini,
/etc/php/7.2/cli/conf.d/20-mysqli.ini,
/etc/php/7.2/cli/conf.d/20-pdo_mysql.ini,
/etc/php/7.2/cli/conf.d/20-phar.ini,
/etc/php/7.2/cli/conf.d/20-posix.ini,
/etc/php/7.2/cli/conf.d/20-readline.ini,
/etc/php/7.2/cli/conf.d/20-redis.ini,
/etc/php/7.2/cli/conf.d/20-shmop.ini,
/etc/php/7.2/cli/conf.d/20-simplexml.ini,
/etc/php/7.2/cli/conf.d/20-soap.ini,
/etc/php/7.2/cli/conf.d/20-sockets.ini,
/etc/php/7.2/cli/conf.d/20-sysvmsg.ini,
/etc/php/7.2/cli/conf.d/20-sysvsem.ini,
/etc/php/7.2/cli/conf.d/20-sysvshm.ini,
/etc/php/7.2/cli/conf.d/20-tokenizer.ini,
/etc/php/7.2/cli/conf.d/20-wddx.ini,
/etc/php/7.2/cli/conf.d/20-xmlreader.ini,
/etc/php/7.2/cli/conf.d/20-xmlrpc.ini,
/etc/php/7.2/cli/conf.d/20-xmlwriter.ini,
/etc/php/7.2/cli/conf.d/20-xsl.ini,
/etc/php/7.2/cli/conf.d/20-zip.ini

Dari hasil di atas anda bisa melihat ekstensi – ekstensi eksternal yang terinstall di system saya.

Lalu kemudian data – data di atas saya catat menjadi seperti berikut ini.

php7.3-mysqlnd php7.3-opcache php7.3-pdo php7.3-xml php7.3-calendar php7.3-ctype php7.3-curl php7.3-dom php7.3-exif php7.3-fileinfo php7.3-ftp php7.3-gd php7.3-gettext php7.3-iconv php7.3-igbinary php7.3-imagick php7.3-imap php7.3-json php7.3-mbstring php7.3-mysqli php7.3-pdo_mysql php7.3-phar php7.3-posix php7.3-readline php7.3-redis php7.3-shmop php7.3-simplexml php7.3-soap php7.3-sockets php7.3-sysvmsg php7.3-sysvsem php7.3-sysvshm php7.3-tokenizer php7.3-wddx php7.3-xmlreader php7.3-xmlrpc php7.3-xmlwriter php7.3-xsl php7.3-zip

Dan gerombolan ekstensi ini merupakan contoh yang akan kita coba gunakan untuk proses upgrade PHP 7.3.

Upgrade PHP 7.3

1.  Install PHP 7.3

Cara untuk menginstall PHP sudah pernah saya bahas sebelumnya dalam rangkaian cara untuk menginstall Nginx, PHP 7.x, MariaDB, dan WordPress di Ubuntu 18.04 Atau Debian 9.

Sama dengan pembahasan tersebut, disini saya akan menggunakan repository pihak ketiga dari Ondřej Surý karena lebih up to date dibandingkan package dari Ubuntu.

sudo add-apt-repository ppa:ondrej/php

Lalu update system setelah anda menambahkan repository tersebut.

sudo apt-get update

WordPress Web Based

Jika anda menggunakan wordpress sebagai basis web anda, maka secara general anda bisa menggunakan command berikut.

sudo apt-get install php7.3-fpm php7.3-common php7.3-mysql php7.3-xml php7.3-xmlrpc php7.3-curl php7.3-gd php7.3-cli php7.3-dev php7.3-imap php7.3-mbstring php7.3-opcache php7.3-soap php7.3-zip

Dalam baris di atas saya belum memasukkan module redis, karena bisa jadi anda menggunakan memcached sebagai object cache anda.

Jika anda menggunakan redis, maka tambahkan module redis dengan command berikut ini.

sudo apt-get install php-redis

Atau jika anda menggunakan memcached, maka gunakan command berikut.

sudo apt-get install php-memcached

Non-Wordpress

Namun jika anda tidak menggunakan WordPress, atau jika anda ingin module yang terinstall sama seperti sebelumnya, maka anda perlu menginstall ekstensi / module yang telah anda cek sebelumnya.

Seperti yang saya katakan sebelumnya, di sini saya akan mencoba untuk menginstall gerombolan data ekstensi di atas dengan menggunakan formula berikut ini,


sudo apt-get install php7.3-fpm [php7.3-modules]
 

Kenapa mencoba?

Jika anda mengingat package PHP apa saja yang pernah anda install tidak masalah, anda langsung bisa menginstall dengan formula di atas.

Namun saya pribadi seringnya lupa, sehingga cara inilah yang sering saya gunakan.

Dengan menggunakan data dan formula di atas, maka hasilnya sebagai berikut.

sudo apt-get install php7.3-fpm php7.3-mysqlnd php7.3-opcache php7.3-pdo php7.3-xml php7.3-calendar php7.3-ctype php7.3-curl php7.3-dom php7.3-exif php7.3-fileinfo php7.3-ftp php7.3-gd php7.3-gettext php7.3-iconv php7.3-igbinary php7.3-imagick php7.3-imap php7.3-json php7.3-mbstring php7.3-mysqli php7.3-pdo_mysql php7.3-phar php7.3-posix php7.3-readline php7.3-redis php7.3-shmop php7.3-simplexml php7.3-soap php7.3-sockets php7.3-sysvmsg php7.3-sysvsem php7.3-sysvshm php7.3-tokenizer php7.3-wddx php7.3-xmlreader php7.3-xmlrpc php7.3-xmlwriter php7.3-xsl php7.3-zip
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Note, selecting 'php7.3-mysql' instead of 'php7.3-mysqlnd'
Note, selecting 'php7.3-common' instead of 'php7.3-pdo'
Note, selecting 'php7.3-common' instead of 'php7.3-calendar'
Note, selecting 'php7.3-common' instead of 'php7.3-ctype'
Note, selecting 'php7.3-xml' instead of 'php7.3-dom'
Note, selecting 'php7.3-common' instead of 'php7.3-exif'
Note, selecting 'php7.3-common' instead of 'php7.3-fileinfo'
Note, selecting 'php7.3-common' instead of 'php7.3-ftp'
Note, selecting 'php7.3-common' instead of 'php7.3-gettext'
Note, selecting 'php7.3-common' instead of 'php7.3-iconv'
Note, selecting 'php-igbinary' instead of 'php7.3-igbinary'
Note, selecting 'php-imagick' instead of 'php7.3-imagick'
Note, selecting 'php7.3-mysql' instead of 'php7.3-mysqli'
Note, selecting 'php7.3-common' instead of 'php7.3-phar'
Note, selecting 'php7.3-common' instead of 'php7.3-posix'
Note, selecting 'php-redis' instead of 'php7.3-redis'
Note, selecting 'php7.3-common' instead of 'php7.3-shmop'
Note, selecting 'php7.3-xml' instead of 'php7.3-simplexml'
Note, selecting 'php7.3-common' instead of 'php7.3-sockets'
Note, selecting 'php7.3-common' instead of 'php7.3-sysvmsg'
Note, selecting 'php7.3-common' instead of 'php7.3-sysvsem'
Note, selecting 'php7.3-common' instead of 'php7.3-sysvshm'
Note, selecting 'php7.3-common' instead of 'php7.3-tokenizer'
Note, selecting 'php7.3-xml' instead of 'php7.3-wddx'
Note, selecting 'php7.3-xml' instead of 'php7.3-xmlreader'
Note, selecting 'php7.3-xml' instead of 'php7.3-xmlwriter'
E: Unable to locate package php7.3-pdo_mysql
E: Couldn't find any package by glob 'php7.3-pdo_mysql'
E: Couldn't find any package by regex 'php7.3-pdo_mysql'
 

Anda bisa lihat pada hasil di atas betapa cerdasnya linux. Namun instalasi di atas failed, karena package php7.3-pdo_mysql tidak di temukan, karena pdo_mysql bukan merupakan package, namun hanyalah module dari php7.3-mysql.

Oleh karena itu saya akan melakukan running ulang tanpa pdo_mysql yang bisa anda lihat sebagai berikut.

sudo apt-get install php7.3-fpm php7.3-mysqlnd php7.3-opcache php7.3-pdo php7.3-xml php7.3-calendar php7.3-ctype php7.3-curl php7.3-dom php7.3-exif php7.3-fileinfo php7.3-ftp php7.3-gd php7.3-gettext php7.3-iconv php7.3-igbinary php7.3-imagick php7.3-imap php7.3-json php7.3-mbstring php7.3-mysqli php7.3-phar php7.3-posix php7.3-readline php7.3-redis php7.3-shmop php7.3-simplexml php7.3-soap php7.3-sockets php7.3-sysvmsg php7.3-sysvsem php7.3-sysvshm php7.3-tokenizer php7.3-wddx php7.3-xmlreader php7.3-xmlrpc php7.3-xmlwriter php7.3-xsl php7.3-zip
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Note, selecting 'php7.3-mysql' instead of 'php7.3-mysqlnd'
Note, selecting 'php7.3-common' instead of 'php7.3-pdo'
Note, selecting 'php7.3-common' instead of 'php7.3-calendar'
Note, selecting 'php7.3-common' instead of 'php7.3-ctype'
Note, selecting 'php7.3-xml' instead of 'php7.3-dom'
Note, selecting 'php7.3-common' instead of 'php7.3-exif'
Note, selecting 'php7.3-common' instead of 'php7.3-fileinfo'
Note, selecting 'php7.3-common' instead of 'php7.3-ftp'
Note, selecting 'php7.3-common' instead of 'php7.3-gettext'
Note, selecting 'php7.3-common' instead of 'php7.3-iconv'
Note, selecting 'php-igbinary' instead of 'php7.3-igbinary'
Note, selecting 'php-imagick' instead of 'php7.3-imagick'
Note, selecting 'php7.3-mysql' instead of 'php7.3-mysqli'
Note, selecting 'php7.3-common' instead of 'php7.3-phar'
Note, selecting 'php7.3-common' instead of 'php7.3-posix'
Note, selecting 'php-redis' instead of 'php7.3-redis'
Note, selecting 'php7.3-common' instead of 'php7.3-shmop'
Note, selecting 'php7.3-xml' instead of 'php7.3-simplexml'
Note, selecting 'php7.3-common' instead of 'php7.3-sockets'
Note, selecting 'php7.3-common' instead of 'php7.3-sysvmsg'
Note, selecting 'php7.3-common' instead of 'php7.3-sysvsem'
Note, selecting 'php7.3-common' instead of 'php7.3-sysvshm'
Note, selecting 'php7.3-common' instead of 'php7.3-tokenizer'
Note, selecting 'php7.3-xml' instead of 'php7.3-wddx'
Note, selecting 'php7.3-xml' instead of 'php7.3-xmlreader'
Note, selecting 'php7.3-xml' instead of 'php7.3-xmlwriter'
php-imagick is already the newest version (3.4.3-4+ubuntu18.04.1+deb.sury.org+1).
php-redis is already the newest version (4.2.0-1+ubuntu18.04.1+deb.sury.org+1).
php-igbinary is already the newest version (2.0.7-1+ubuntu18.04.1+deb.sury.org+10).
php-igbinary set to manually installed.
The following additional packages will be installed:
libpcre2-8-0 php7.3-cli
The following NEW packages will be installed:
  libpcre2-8-0 php7.3-cli php7.3-common php7.3-curl php7.3-fpm php7.3-gd php7.3-imap php7.3-json php7.3-mbstring
  php7.3-mysql php7.3-opcache php7.3-readline php7.3-soap php7.3-xml php7.3-xmlrpc php7.3-xsl php7.3-zip
0 upgraded, 17 newly installed, 0 to remove and 0 not upgraded.
Need to get 4038 kB/5065 kB of archives.
After this operation, 21.0 MB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 http://ppa.launchpad.net/ondrej/php/ubuntu bionic/main amd64 libpcre2-8-0 amd64 10.31-3+ubuntu18.04.1+deb.sury.org+1 [179 kB]

## ------ proses instalasi ---------##

Creating config file /etc/php/7.3/cli/php.ini with new version
Setting up php7.3-fpm (7.3.0-2+ubuntu18.04.1+deb.sury.org+1) ...

Creating config file /etc/php/7.3/fpm/php.ini with new version
Created symlink /etc/systemd/system/multi-user.target.wants/php7.3-fpm.service → /lib/systemd/system/php7.3-fpm.service.
Processing triggers for libc-bin (2.27-3ubuntu1) ...
Processing triggers for systemd (237-3ubuntu10.9) ...
Processing triggers for ureadahead (0.100.0-20) ...

 _

Setelah proses install selesai, maka ketika dilakukan pengecekan versi PHP akan muncul hasil seperti berikut ini.

 php -v
PHP 7.3.0-2+ubuntu18.04.1+deb.sury.org+1 (cli) (built: Dec 17 2018 09:22:47) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.3.0-dev, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.3.0-2+ubuntu18.04.1+deb.sury.org+1, Copyright (c) 1999-2018, by Zend Technologies
 _

Dan selanjutnya ketika module / ekstensi PHP di cek akan menampilkan hasil kurang lebih seperti berikut ini.

 php -i | grep -e "/etc/php/7.3/cli/conf.d/" 
Additional .ini files parsed => /etc/php/7.3/cli/conf.d/10-mysqlnd.ini, 
/etc/php/7.3/cli/conf.d/10-opcache.ini, 
/etc/php/7.3/cli/conf.d/10-pdo.ini, 
/etc/php/7.3/cli/conf.d/15-xml.ini, 
/etc/php/7.3/cli/conf.d/20-calendar.ini, 
/etc/php/7.3/cli/conf.d/20-ctype.ini, 
/etc/php/7.3/cli/conf.d/20-curl.ini, 
/etc/php/7.3/cli/conf.d/20-dom.ini, 
/etc/php/7.3/cli/conf.d/20-exif.ini, 
/etc/php/7.3/cli/conf.d/20-fileinfo.ini, 
/etc/php/7.3/cli/conf.d/20-ftp.ini, 
/etc/php/7.3/cli/conf.d/20-gd.ini, 
/etc/php/7.3/cli/conf.d/20-gettext.ini, 
/etc/php/7.3/cli/conf.d/20-iconv.ini, 
/etc/php/7.3/cli/conf.d/20-igbinary.ini, 
/etc/php/7.3/cli/conf.d/20-imagick.ini, 
/etc/php/7.3/cli/conf.d/20-imap.ini, 
/etc/php/7.3/cli/conf.d/20-json.ini, 
/etc/php/7.3/cli/conf.d/20-mbstring.ini, 
/etc/php/7.3/cli/conf.d/20-mysqli.ini, 
/etc/php/7.3/cli/conf.d/20-pdo_mysql.ini, 
/etc/php/7.3/cli/conf.d/20-phar.ini, 
/etc/php/7.3/cli/conf.d/20-posix.ini, 
/etc/php/7.3/cli/conf.d/20-readline.ini, 
/etc/php/7.3/cli/conf.d/20-redis.ini, 
/etc/php/7.3/cli/conf.d/20-shmop.ini, 
/etc/php/7.3/cli/conf.d/20-simplexml.ini, 
/etc/php/7.3/cli/conf.d/20-soap.ini, 
/etc/php/7.3/cli/conf.d/20-sockets.ini, 
/etc/php/7.3/cli/conf.d/20-sysvmsg.ini, 
/etc/php/7.3/cli/conf.d/20-sysvsem.ini, 
/etc/php/7.3/cli/conf.d/20-sysvshm.ini, 
/etc/php/7.3/cli/conf.d/20-tokenizer.ini, 
/etc/php/7.3/cli/conf.d/20-wddx.ini, 
/etc/php/7.3/cli/conf.d/20-xmlreader.ini, 
/etc/php/7.3/cli/conf.d/20-xmlrpc.ini, 
/etc/php/7.3/cli/conf.d/20-xmlwriter.ini, 
/etc/php/7.3/cli/conf.d/20-xsl.ini, 
/etc/php/7.3/cli/conf.d/20-zip.ini
 

Anda bisa lihat dari hasil di atas, pdo_mysql ada di dalam gerombolan tersebut.

2.  Konfigurasi PHP 7.3

Selanjutnya adalah melakukan konfigurasi PHP 7.3 yang sudah di install. Konfigurasi sesuai dengan konfigurasi yang ada pada PHP sebelumnya.

Secara general, saya akan membahas konfigurasi utama yang harus anda lakukan terlebih dahulu.

Buka file konfigurasi pool dengan command berikut.

sudo nano /etc/php/7.3/fpm/pool.d/www.conf

Setelah file terbuka, cari dan ubah baris berikut dengan user dan group sesuai dengan konfigurasi Nginx.


user = omgoblog

group = omgoblog

listen.owner = omgoblog

listen.group = omgoblog
 

Setelah itu scroll ke bawah dan cari listen config seperti berikut ini.


; The address on which to accept FastCGI requests.
; Valid syntaxes are:
;   'ip.add.re.ss:port'    - to listen on a TCP socket to a specific IPv4 address on
;                            a specific port;
;   '[ip:6:addr:ess]:port' - to listen on a TCP socket to a specific IPv6 address on
;                            a specific port;
;   'port'                 - to listen on a TCP socket to all addresses
;                            (IPv6 and IPv4-mapped) on a specific port;
;   '/path/to/unix/socket' - to listen on a unix socket.
; Note: This value is mandatory.
listen = /run/php/php7.3-fpm.sock
 

Catat listen = /run/php/php7.3-fpm.sock yang mana akan di gunakan untuk mengkonfigurasi Nginx.

Setelah itu tekan ctrl + x → Y untuk menyimpan hasil editing.

Berikutnya sesuaikan pengaturan file php.ini dengan pengaturan yang telah anda lakukan pada PHP versi sebelumnya.

sudo nano /etc/php/7.3/fpm/php.ini

Sebagai contoh dan hal yang paling umum adalah merubah upload_max_filesize sesuai dengan ukuran yang di inginkan.


upload_max_filesize = 8M
 

Setelah itu tekan ctrl + x → Y untuk menyimpan hasil editing, dan lakukan pengecekan konfigurasi PHP yang telah anda lakukan.

 sudo php-fpm7.3 -t
[28-Dec-2018 08:09:02] NOTICE: configuration file /etc/php/7.3/fpm/php-fpm.conf test is successful
 

3.  Konfigurasi Nginx

Selanjutnya hal yang perlu di lakukan adalah mengkonfigurasi Nginx.

Buka file nginx.conf dengan mengetikkan command berikut ini.


sudo nano /etc/nginx/nginx.conf
 

Lalu ubah dan sesuaikan server socket sesuai dengan variable listen yang di dapatkan dari konfigurasi PHP di atas.


upstream php {
    server unix:/run/php/php7.3-fpm.sock;
}
 

Setelah itu tekan ctrl + x → Y untuk menyimpan hasil editing, lalu cek konfigurasi Nginx seperti berikut ini.

sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
 

Jika pengecekan PHP dan Nginx sudah OK, selanjutnya restart PHP dan nginx service dengan command di bawah ini.

  • Restart PHP 7.3 service
    
    sudo service php7.3-fpm restart
     
  • Restart Nginx service
    
    sudo service nginx restart
     

Sampai pada tahap ini PHP versi lawas sudah terupgrade dengan versi PHP 7.3. Jika anda ingin menghapus PHP versi sebelumnya, maka lanjutkan pada poin di bawah ini.

4.  Hapus PHP Sebelumnya (ex. PHP 7.2) – opsional

Selanjutnya adalah pilihan anda apakah versi PHP sebelumnya mau di hapus atau tidak.

Sebagai contoh di sini saya akan menghapus PHP 7.2, dan jika anda ingin menghapus PHP versi sebelumnya maka anda bisa menggunakan command berikut ini.


sudo apt-get purge php7.2-*
 

Dimana disini saya menggunakan PHP 7.2 sebagai contoh, dan hasilnya bisa lihat sebagai berikut.

sudo apt-get purge php7.2-*
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be REMOVED:
  php7.2-cli* php7.2-common* php7.2-curl* php7.2-dev* php7.2-fpm* php7.2-gd* php7.2-imap* php7.2-json*
  php7.2-mbstring* php7.2-mysql* php7.2-opcache* php7.2-readline* php7.2-soap* php7.2-xml* php7.2-xmlrpc*
  php7.2-zip*
0 upgraded, 0 newly installed, 16 to remove and 0 not upgraded.
After this operation, 26.3 MB disk space will be freed.
Do you want to continue? [Y/n] Y
(Reading database ... 161201 files and directories currently installed.)
Removing php7.2-dev (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Removing php7.2-fpm (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Removing php7.2-cli (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Removing php7.2-zip (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Removing php7.2-xmlrpc (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Removing php7.2-curl (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Removing php7.2-gd (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Removing php7.2-imap (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Removing php7.2-json (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Removing php7.2-mbstring (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Removing php7.2-mysql (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Removing php7.2-opcache (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Removing php7.2-readline (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Removing php7.2-soap (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Removing php7.2-xml (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Removing php7.2-common (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Processing triggers for man-db (2.8.3-2ubuntu0.1) ...
(Reading database ... 160648 files and directories currently installed.)
Purging configuration files for php7.2-mysql (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Purging configuration files for php7.2-gd (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Purging configuration files for php7.2-xml (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Purging configuration files for php7.2-xmlrpc (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Purging configuration files for php7.2-fpm (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Purging configuration files for php7.2-zip (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Purging configuration files for php7.2-common (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Purging configuration files for php7.2-imap (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Purging configuration files for php7.2-curl (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Purging configuration files for php7.2-mbstring (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Purging configuration files for php7.2-soap (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Purging configuration files for php7.2-readline (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Purging configuration files for php7.2-cli (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Purging configuration files for php7.2-json (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Purging configuration files for php7.2-opcache (7.2.13-1+ubuntu18.04.1+deb.sury.org+1) ...
Processing triggers for ureadahead (0.100.0-20) ...
Processing triggers for systemd (237-3ubuntu10.9) ...
 _

Conclussion

Dengan mengikuti langkah di atas, maka PHP yang ada di system anda adalah PHP versi terbaru, yaitu PHP 7.3.

Pada contoh di atas saya menggunakan PHP 7.2 sebagai PHP lawas, namun jika anda ingin melakukan upgrade PHP dari PHP 7.0 ke PHP 7.3 misalnya, maka anda tinggal menyesuaikannya dengan mengganti PHP 7.2 menjadi PHP 7.0.

Setelah anda melakukan upgrade ke PHP 7.3, silahkan tes performa web anda menggunakan webpagetest, pingdom, maupun GTmetrix dan lihat perbedaannya.

Met Upgrade Sob!!

Leave a Reply

Your email address will not be published. Required fields are marked *