Migracja z PHP 6.X do PHP 7

Data: 2016-01-06, autor: Michał Misztal

Jakoś tak się stało, że zaktualizowałem system i nie zwróciłem uwagi na to, że zmieniła mi się wersja PHP. Nie zajmowałem się kodem ostatnio więc wszystko przeszło niezauważenie. Aż do dziś. Aby wszystko działało należy dokonać aktualizacji plików konfiguracyjnych serwera Apache i PHP. W zasadzie to nie wiem czy ta aktualizacja jest potrzebna. PHP w wersji 7 na serwerach pewnie znajdzie się za jakieś 5 - 10 lat. U mnie się po prostu stało. Do dzieła.

Pierwsze co należy zrobić to zmienić nazwy plików konfiguracyjnych. Ja zrobię to z uwzględnieniem kopii zapasowej czyli

[root@komputer]# mv /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.old
[root@komputer]# mv /etc/httpd/conf/httpd.conf.pacnew /etc/httpd/conf/httpd.conf
[root@komputer]# mv /etc/php/php.ini /etc/php/php.ini.old
[root@komputer]# mv /etc/php/php.ini.pacnew /etc/php/php.ini_

Teraz wystarczy skonfigurować Apache, PHP i phpMyAdmin od początku.

W moim przykładzie dla Apache (/etc/httpd/conf/httpd.conf) będzie to

  • zmiana domyślnej lokalizacji folderów stron (sekcja DocumentRoot)
  • zmiana flagi AllowOverride na None
  • wykluczenie linii mpm_event_module modules/mod_mpm_event.so
  • odblokowanie linii mpm_prefork_module modules/mod_mpm_prefork.so
  • dodanie na końcu sekcji modułów linii LoadModule php7_module modules/libphp7.so
  • dodanie linii na końcu sekcji Includes Include conf/extra/php7_module.conf
  • dodanie do Includes linii Include conf/extra/phpmyadmin.conf

Dla PHP (/etc/php/php.ini)

  • ustawienie strefy czasowej (date.timezone = Europe/Warsaw)
  • odblokowanie obsługi mcrypt (extension=mcrypt.so) dla phpMyAdmin
  • odblokowanie modułów obsługi MySQL (extension=pdo_mysql.so extension=mysqli.so)
  • dodanie katalogów /usr/share/webapps/ i /etc/webapps/ do open_basedir dla prawidłowego działania phpMyAdmin

Teraz wystarczy zrestartować komputer lub usługę Apache

[root@komputer]# systemctl restart httpd_

I to tyle na dziś.

Skomentuj lub zgłoś błąd

© Michał Misztal 2018