Upgrade de PhP pentru Apache.

Bineînțeles că, la un moment dat, pentru că lumea nu stă în loc, versiunea PhP, și anume 7.2, sub care rula serverul de pe care cu plăcere citiți aceste rânduri, a devenit un pic „obsolită”, pe firmament strălucind versiuni mai rapide, mai sigure, mai… ceva, dar mai ales pentru că Jetpack mă freacă cu un mesaj gen „AOLEUUUUU !” m-am hotărât să iau taurul de coarne (aproape sigur fiind că va trebui să reinstalez tot softul). N-a fost cazul.

Ultima versiune PhP fiind 7.4 am făcut salt direct la ea, ignorând (asta pentru că eu nu fac bani cu site-ul, ci doar cheltui) toate îndemnurile la back-up, testare versiune, etc.

Mai mult, dacă o să gugăliți, o să vedeți că marea masă a tutorialelor se adresează pentru cei care au site-ul găzduit de către cineva. Acest scurt articol se adresează deci mocangiilor, ca subsemnatul.

ATENȚIE! Numai pentru Ubuntu Server LTS pe care rulează Apache! Pentru NGINX există alte setări.

Deci, mai întâi ceva clasic:

$ sudo -s

$ apt-get update

$ apt-get upgrade

$ apt-get dist-upgrade

La care răspundem cu “YES” la toate întrebările. Este cazul să adăugăm „depozitul” de PhP7.4 la lista deja existentă:

$ sudo apt install software-properties-common

$ sudo add-apt-repository ppa:ondrej/php

$ sudo add-apt-repository ppa:ondrej/apache2    && este recomandat!

$ sudo apt update

De instalat… simplu de tot:

$ apt install php7.4

Acum, dacă mai vrem să ne mai funcționeze site-ul, trebuie să instalăm și ceva extensii. Aici este cazul să știți cam ce extensii vă sunt necesare, în funcție de configurarea existentă și de ce mai aveți pe server. Comanda următoare instalează ce i-a trebuit subsemnatului:

$ apt install php7.4-common php7.4-mysql \

php7.4-xml php7.4-xmlrpc php7.4-curl \

php7.4-gd php7.4-imagick php7.4-cli \

php7.4-dev php7.4-imap php7.4-mbstring \

php7.4-opcache php7.4-soap \

php7.4-zip php7.4-intl -y

Verificăm versiunea curentă a PhP:

$ php -v

Ar trebui să vă spună că este 7.4.5 sau ceva de acest gen. Dar toată munca de până acum ar fi degeaba dacă Apache nu știe că are jucării noi. Deci:

$ a2dismod php7.2         && renunțăm la jucăriile vechi…

$ a2enmod php7.4     && …și trecem la cele noi.

$ service apache2 restart

Acum lucrurile ar trebui să funcționeze normal (la mine au funcționat). Dar, un pic de configurare a fișierului de inițializare, conform cu recomandările de fabrică nu strică. Puteți să le faceți, sau nu, dar una dintre ele mărește dimensiunea fișierelor încărcate, care implicit este de 2 MB (cam puțin pentru un fișier video!). Eu folosesc nano, deci:

$ nano /etc/php/7.4/apache2/php.ini

Întrucât php.ini este destul de mărișor, nu ezitați să folosiți Ctrl+W pentru a găsi parametrii de configurat.

upload_max_filesize = 32M
post_max_size = 48M
memory_limit = 256M
max_execution_time = 600
max_input_vars = 3000
max_input_time = 1000

La sfârșit nu rămâne decât să Ctrl+O și Ctrl+X și… GATA!

…a, era să uit! Ca să „scăpăm” de vechiul PhP (R.I.P.!), fiți atenți la comenzile pe care vi le recomandă Ask Ubuntu, că este posibil să ștergeți orice urmă/versiune de PhP de pe server, inclusiv configurările WordPress și atunci… Buba! Eu am procedat așa:

$ apt purge php7.2 php7.2-common

…și a mers! Cam asta este tot.

Spor!

Lasă un răspuns