Hogyan telepítsük a PHP 7.1.19-et opcionális módban Debian 8-as tökéletes szerverre (2. oldal)

botond küldte be 2018. 07. 07., szo - 01:50 időpontban

Tartalom

 

Systemd unit fájl létrehozása

Hozzuk létre a systemd unit fájlt:

nano /lib/systemd/system/php-7.1.19-fpm.service

És tegyük bele a következő tartalmat, majd mentsük le:

[Unit]
Description=The PHP 7.1.19 FastCGI Process Manager
After=network.target

[Service]
Type=simple
PIDFile=/opt/php-7.1.19/var/run/php-fpm.pid
ExecStart=/opt/php-7.1.19/sbin/php-fpm --nodaemonize --fpm-config /opt/php-7.1.19/etc/php-fpm.conf
ExecReload=/bin/kill -USR2 $MAINPID

[Install]
WantedBy=multi-user.target

Majd engedélyezzük a szolgáltatást és töltsük be újra a systemd-t:

systemctl enable php-7.1.19-fpm.service
systemctl daemon-reload

És indítsuk el a PHP-FPM-et:

systemctl start php-7.1.19-fpm.service

A PHP-FPM működését könnyen le is ellenőrízhetjük a következő paranccsal:

ps -axf | grep fpm
29126 pts/0    S+     0:00  |                       \_ grep fpm
  979 ?        Ss     0:00 php-fpm: master process (/etc/php5/fpm/php-fpm.conf)
  982 ?        S      0:00  \_ php-fpm: pool www
  983 ?        S      0:00  \_ php-fpm: pool www
28978 ?        Ss     0:00 php-fpm: master process (/opt/php-7.1.19/etc/php-fpm.conf)
28979 ?        S      0:00  \_ php-fpm: pool www
28980 ?        S      0:00  \_ php-fpm: pool www

A parancs kimenetében szépen látszik hogy fut az alap PHP5-FPM és mellette a 7-es PHP-FPM www pool-ja is elindult.

 

 

Zend OPcache engedélyezése

Szerkesszük a /opt/php-7.1.19/lib/php.ini fájlt:

nano /opt/php-7.1.19/lib/php.ini

És adjuk a legvégéhez a következő sort:

zend_extension=opcache.so

Teszteljük:

/opt/php-7.1.19/bin/php --version
PHP 7.1.19 (cli) (built: Jul  7 2018 00:12:44) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
    with Zend OPcache v7.1.19, Copyright (c) 1999-2018, by Zend Technologies

 

Memcache engedélyezése (Opcionális)

Telepítsük a következő csomagokat az alábbi apt-get paranccsal:

apt-get install libmemcached-dev pkg-config

Hozzuk létre a könyvtárat, majd töltsük le a wget paranccsal a memcache bővítményt a Githubról, csomagoljuk ki, és lépjünk be a kicsomagolt könyvtárba:

mkdir /usr/local/src/php7-build/php-memcache
cd /usr/local/src/php7-build/php-memcache
wget https://github.com/php-memcached-dev/php-memcached/archive/php7.zip
unzip php7.zip
cd /usr/local/src/php7-build/php-memcache/php-memcached-php7

 

Készítsük elő a forrást az új (7.1.19) PHP phpize parancsával:

/opt/php-7.1.19/bin/phpize

Helyes kimenet:

Configuring for:
PHP Api Version:         20160303
Zend Module Api No:      20160303
Zend Extension Api No:   320160303

Konfigurálás és fordítás:

./configure --with-php-config=/opt/php-7.1.19/bin/php-config
make
make install

A memcache bővítmény engedélyezéséhez szerkesszük ismét a php.ini fájlt:

nano /opt/php-7.1.19/lib/php.ini

És adjuk a végéhez a következő sort:

extension=memcached.so

 

PHP 7.1.19 engedélyezése az ISPConfigban

Lépjünk be az ISPConfigba, majd menjünk a System -> Additional PHP Versions menübe.

PHP 7.1.19 telepítése - ISPConfig - Opcionális PHP verziók

Itt kattintsunk az Add new PHP version gombra, majd töltsük ki az első fül (Név) mezőit az alábbi módon:

PHP 7.1.19 telepítése - ISPConfig - Opcionális PHP verzió - Név

  • Szerver: Itt válasszuk ki a legördülőből a szerverünket
  • Client: Ezt hagyjuk üresen, így akkor az összes kliens számára elérhető lesz ez a PHP verzió
  • PHP név: Itt pedig célszerű beírni a pontos verziót, így ha később további verziókat telepítünk, nem lesz belőle keveredés.

Ezután kattintsunk a FastCGI beállítások fülre:

PHP 7.1.19 telepítése - ISPConfig - Opcionális PHP verzió - FastCGI beállítások

  • Path to the PHP FastCGI binary: /opt/php-7.1.19/bin/php-cgi
  • Path to the php.ini directory: /opt/php-7.1.19/lib

Menjünk tovább a PHP-FPM beállítások fülre:

PHP 7.1.19 telepítése - ISPConfig - Opcionális PHP verzió - PHP-FPM beállítások

  • Path to the PHP-FPM init script: php-7.1.19-fpm
    (Itt ügyeljünk, hogy nem / jellel kezdődik, mert nem init.d indítófájlt készítettünk, hanem systemd unit fájlt)
  • Path to the php.ini directory: /opt/php-7.1.19/lib
  • Path to the PHP-FPM pool directory: /opt/php-7.1.19/etc/php-fpm.d

Végül mentsük le.

 

Naplófájlok forgatása (Opcionális)

Érdemes fontolóra venni a naplófájlok forgatását a Logrotate programmal. Amennyiben szeretnénk beállítani, ebben a leírásban találhatjuk meg a módját.

 

Konklúzió

Ezzel tehát létrehoztunk egy új, opcionálisan választható PHP verziót, amit külön bármelyik weboldalnál engedélyezhetünk a weboldal beállításainál. Így a weboldalak egymástól függetlenül futhatnak különböző PHP verziókkal.

 

 

Ez a leírás több oldalból áll: