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.