PHP verziók használata ISPConfig3 alatt kicsit Másképp

Ebben a leírásban azt fogjuk megoldani, hogy az ISPConfig3 alatt különböző verziójú php motorokat használhassunk. Korábbi cikkemben már bemutattam egy megoldást, ott forrásból fordítottuk a különböző php verziókat, az valamelyest biztonságosabb, a jelenlegi módszer pedig egyszerűbb.

Rendszer

Jelenleg Debian9 linux rendszerre került telepítésre az ISPConfig3. Alapértelmezésben a php7.0 verzió az, mely a rendszerrel együtt települt. A különböző futtatni kívánt weboldalak más-más php verziójú motort kívánhatnak. A célunk, hogy a rendszerünk fel legyen készítve ezek futtatására.

Előkészületek Debina rendszer esetén -packages.sury.org

Bővítsük a forrás csomagjaink listáját a packages.sury.org tárolóval, amely lehetővé teszi a különböző verziójú php-k telepítését.

wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list

Telepítsük a szükséges csomagokat:

apt-get install -y apt-transport-https lsb-release ca-certificates

Majd frissítsük a rendszerünket:

apt update && apt upgrade

Előkészületek Ubuntu rendszer esetén -ppa:ondrej

add-apt-repository ppa:ondrej/php

Amennyiben nincs telepítve, akkor:

apt install software-properties-common

Majd frissítsük a rendszerünket:

apt update && apt upgrade

PHP Verziók telepítése

A php7.0 telepítése is hasonló lenne az alábbi verziókhoz. Mivel azonban ez az alapértelmezett verziónk, így azt külön nem fogom telepíteni, maradnak az alább verziók.

PHP5.6

Adjuk ki parancssorban az alábbi utasítást a php5.6 csomagok telepítéséhez:

apt-get install php5.6 php5.6-cli php5.6-cgi php5.6-fpm php5.6-gd php5.6-mysql php5.6-imap php5.6-curl php5.6-intl php5.6-pspell php5.6-recode php5.6-sqlite3 php5.6-tidy php5.6-xmlrpc php5.6-xsl php5.6-zip php5.6-mbstring php5.6-soap php5.6-opcache libicu65 php5.6-common php5.6-json php5.6-readline php5.6-xml php5.6-bcmath php5.6-gmp php5.6-imagick

PHP7.0

apt-get install php7.0 php7.0-cli php7.0-cgi php7.0-fpm php7.0-gd php7.0-mysql php7.0-imap php7.0-curl php7.0-intl php7.0-pspell php7.0-recode php7.0-sqlite3 php7.0-tidy php7.0-xmlrpc php7.0-xsl php7.0-zip php7.0-mbstring php7.0-soap php7.0-opcache php7.0-common php7.0-json php7.0-readline php7.0-xml php7.0-bcmath php7.0-gmp php7.0-imagick

PHP7.1

Adjuk ki parancssorban az alábbi utasítást a php7.1 csomagok telepítéséhez:

apt-get install php7.1 php7.1-cli php7.1-cgi php7.1-fpm php7.1-gd php7.1-mysql php7.1-imap php7.1-curl php7.1-intl php7.1-pspell php7.1-recode php7.1-sqlite3 php7.1-tidy php7.1-xmlrpc php7.1-xsl php7.1-zip php7.1-mbstring php7.1-soap php7.1-opcache php7.1-common php7.1-json php7.1-readline php7.1-xml php7.1-bcmath php7.1-gmp php7.1-imagick

PHP7.2

Adjuk ki parancssorban az alábbi utasítást a php7.2 csomagok telepítéséhez:

apt-get install php7.2 php7.2-cli php7.2-cgi php7.2-fpm php7.2-gd php7.2-mysql php7.2-imap php7.2-curl php7.2-intl php7.2-pspell php7.2-recode php7.2-sqlite3 php7.2-tidy php7.2-xmlrpc php7.2-xsl php7.2-zip php7.2-mbstring php7.2-soap php7.2-opcache php7.2-common php7.2-json php7.2-readline php7.2-xml php7.2-bcmath php7.2-gmp php7.2-imagick

PHP7.3

Adjuk ki parancssorban az alábbi utasítást a php7.3 csomagok telepítéséhez:

apt-get install php7.3 php7.3-cli php7.3-cgi php7.3-fpm php7.3-gd php7.3-mysql php7.3-imap php7.3-curl php7.3-intl php7.3-pspell php7.3-recode php7.3-sqlite3 php7.3-tidy php7.3-xmlrpc php7.3-xsl php7.3-zip php7.3-mbstring php7.3-soap php7.3-opcache php7.3-common php7.3-json php7.3-readline php7.3-xml php7.3-bcmath php7.3-gmp php7.3-imagick

PHP7.4

Adjuk ki parancssorban az alábbi utasítást a php7.4 csomagok telepítéséhez:

apt-get install php7.4 php7.4-cli php7.4-cgi php7.4-fpm php7.4-gd php7.4-mysql php7.4-imap php7.4-curl php7.4-intl php7.4-pspell php7.4-sqlite3 php7.4-tidy php7.4-xmlrpc php7.4-xsl php7.4-zip php7.4-mbstring php7.4-soap php7.4-opcache libonig5 php7.4-common php7.4-json php7.4-readline php7.4-xml php7.4-bcmath php7.4-gmp php7.4-imagick

Opcionális csomagok telepítése

Memcache kiterjesztés

apt-get install php-memcache php-memcached

APCu kiterjesztés

apt-get install php-apcu php-apcu-bc

xDebug kiterjesztés

apt-get install php-xdebug

Alapértelmezett PHP motor visszaállítása

A különböző verziók telepítésével megváltozott az alapértelmezésben használt php motor verziója. Ez hibás működést eredményezhet az ISPConfig3 működésében. Ezért javasolt visszaállítani az alapértelmezett verziót.

update-alternatives --config php
update-alternatives --config php-cgi

Debian 10-hez: 7.3, Debian 9-hez: PHP 7.0, Debian 8-hoz, PHP 5.6 az ajánlott.

Indítsuk újra a különböző szolgáltatásokat

service php5.6-fpm restart
service php7.0-fpm restart
service php7.1-fpm restart
service php7.2-fpm restart
service php7.3-fpm restart
service php7.4-fpm restart

ISPConfig3 PHP verziók beállítása

Nincs is más dolgunk, mint beállítani a különböző php verziókat az ISPConfig3 felületén. Lépjünk be az ISPConfig3 adminisztrációs felületén, és navigáljunk a Rendszer >> Additional PHP Versions menüpontra.

PHP5.6 Verzió beállítása

Add new PHP version

PHPName: php5.6

Lépjünk tovább a FastCGI Settings fülre, itt

Path to the PHP FastCGI binary: php-cgi5.6
Path to the php.ini directory: /etc/php/5.6/cgi/

Folytassuk a PHP-FPM Settings fülön:

Path to the PHP-FPM init script: php5.6-fpm
Path to the php.ini directory: /etc/php/5.6/fpm
Path to the PHP-FPM pool directory: /etc/php/5.6/fpm/pool.d

Mentés gombra kattintva kész vagyunk.

PHP7.0 Verzió beállítása

Add new PHP version

PHPName: php7.0

Lépjünk tovább a FastCGI Settings fülre, itt

Path to the PHP FastCGI binary: php-cgi7.0
Path to the php.ini directory: /etc/php/7.0/cgi/

Folytassuk a PHP-FPM Settings fülön:

Path to the PHP-FPM init script: php7.0-fpm
Path to the php.ini directory: /etc/php/7.0/fpm
Path to the PHP-FPM pool directory: /etc/php/7.0/fpm/pool.d

Mentés gombra kattintva kész vagyunk.

PHP7.1 Verzió beállítása

Add new PHP version

PHPName: php7.1

Lépjünk tovább a FastCGI Settings fülre, itt

Path to the PHP FastCGI binary: php-cgi7.1
Path to the php.ini directory: /etc/php/7.1/cgi

Folytassuk a PHP-FPM Settings fülön:

Path to the PHP-FPM init script: php7.1-fpm
Path to the php.ini directory: /etc/php/7.1/fpm
Path to the PHP-FPM pool directory: /etc/php/7.1/fpm/pool.d

Mentés gombra kattintva kész vagyunk.

PHP7.2 Verzió beállítása

Add new PHP version

PHPName: php7.2

Lépjünk tovább a FastCGI Settings fülre, itt

Path to the PHP FastCGI binary: php-cgi7.2
Path to the php.ini directory: /etc/php/7.2/cgi

Folytassuk a PHP-FPM Settings fülön:

Path to the PHP-FPM init script: php7.2-fpm
Path to the php.ini directory: /etc/php/7.2/fpm
Path to the PHP-FPM pool directory: /etc/php/7.2/fpm/pool.d

Mentés gombra kattintva kész vagyunk.

PHP7.3 Verzió beállítása

Add new PHP version

PHPName: php7.3

Lépjünk tovább a FastCGI Settings fülre, itt

Path to the PHP FastCGI binary: php-cgi7.3
Path to the php.ini directory: /etc/php/7.3/cgi

Folytassuk a PHP-FPM Settings fülön:

Path to the PHP-FPM init script: php7.3-fpm
Path to the php.ini directory: /etc/php/7.3/fpm
Path to the PHP-FPM pool directory: /etc/php/7.3/fpm/pool.d

Mentés gombra kattintva kész vagyunk.

PHP7.4 Verzió beállítása

Add new PHP version

PHPName: php7.4

Lépjünk tovább a FastCGI Settings fülre, itt

Path to the PHP FastCGI binary: php-cgi7.4
Path to the php.ini directory: /etc/php/7.4/cgi

Folytassuk a PHP-FPM Settings fülön:

Path to the PHP-FPM init script: php7.4-fpm
Path to the php.ini directory: /etc/php/7.4/fpm
Path to the PHP-FPM pool directory: /etc/php/7.4/fpm/pool.d

Mentés gombra kattintva kész vagyunk.

Végszó

A beállításokkal végeztünk is. Így már lehetőségünk van a különböző weboldalak konfigurálásánál kiválasztani a futtatni kívánt php verziót.