Hoe PHP 7.x te installeren als PHP-FPM & FastCGI voor ISPConfig 3.1 met apt op Debian 8 en 9

Hoe PHP 7.x te installeren als PHP-FPM & FastCGI voor ISPConfig 3.1 met apt op Debian 8 en 9

Sluit documenten direct op uw website in met een paar regels code

De definitieve versie van PHP 7.1 is nu beschikbaar. PHP 7.1 is de volgende generatie van de PHP-programmeertaal, het is tot 2 keer sneller dan PHP 5.6 en 14 is sneller dan PHP 5.0 volgens de release-opmerkingen. De nieuwe PHP-versie is niet compatibel met 100% met PHP 5.x omdat sommige verouderde API's zijn verwijderd, dus het is een goed idee om uw websites te gaan testen op compatibiliteit met deze nieuwe versie. Dit kan eenvoudig worden gedaan zonder alle sites op uw server te beïnvloeden door de multi-PHP-versie in ISPConfig 3 te gebruiken. De PHP-versie kan voor elke site afzonderlijk in de ISPConfig 3-website-instellingen worden geselecteerd. Deze functie werkt met PHP-FPM en FastCGI. Deze tutorial laat zien hoe je PHP 7.x als een PHP-FPM en een FastCGI-versie op een Debian Jessie or Stretch-server van de Debian PHP Package maintainers-site direct kunt installeren.

1 Voorlopige opmerking

Ik zal PHP direct installeren vanaf de Debian PHP Package maintainers-site https://packages.sury.org/php/ met apt-get. Dit overschrijft de bestaande installatie niet maar verandert de standaard gebruikte PHP-versie naar de nieuwste geïnstalleerde versie! Het is dus erg belangrijk om een ​​nieuwe PHP-versie voor de geïnstalleerde versie toe te voegen aan ISPConfig en alle sites eerst naar deze versie te veranderen. Als u cron-taken gebruikt die PHP-scripts aanroepen, moet u deze ook aanpassen, verderop meer.

Omdat andere pakketten als openssl ook zijn bijgewerkt, kunnen de geïnstalleerde pakketten van sury.org niet eenvoudig na de installatie worden verwijderd. U moet deze pakketten eerst downgraden naar de Debian-versies voordat u de PHP-pakketten kunt verwijderen zonder andere pakketten te verbreken. De eenvoudigste manier voor mij was om de nieuwe toegevoegde repository te deactiveren, vervolgens zullen geïnstalleerde pakketten van sury.org verschijnen als zelf gemaakte of verouderde pakketten in aptitude en kun je pakket na pakket downgraden.

Houd er rekening mee dat PHP-FPM op zowel Apache- als Nginx-servers kan worden gebruikt, terwijl FastCGI alleen beschikbaar is voor Apache-servers.

2 Activeer PHP-versies in ISPConfig

In ISPConfig 3 kunt u de nieuwe PHP-versies configureren onder Systeem> Aanvullende PHP-versies.

Voeg de PHP-versie van Debian toe

U kunt deze stap overslaan als u geen Debian-versie van PHP hebt geïnstalleerd.

Allereerst moet je een nieuwe versie toevoegen voor de reeds geïnstalleerde PHP-versie. Op het tabblad Naam vult u eenvoudig een naam in voor de PHP-versie (bijv. Debian 5.6) - deze PHP-versie zal onder deze naam worden vermeld in de website-instellingen in ISPConfig:

php-7-1-naam_-1-3588373

Ga naar het tabblad FastCGI-instellingen en vul de velden als volgt in:

Pad naar het PHC FastCGI binaire bestand: php5-cgi
Pad naar de php.ini-map: /etc/php5/cgi/php.ini

PHP 7.1 FastCGI

Ga dan naar het tabblad PHP-FPM Instellingen en vul de velden als volgt in:

Pad naar het script PHP-FPM init: php5-fpm
Pad naar de php.ini-map: /etc/php5/fpm/php.ini
Pad naar de PHP-FPM poolmap: /etc/php5/fpm/pool.d

php-7-1-fpm_-6262131

Belangrijke stap voor cron-taken

Als u cron-taken gebruikt die PHP-scripts aanroepen, moet u cron ook vertellen welke versie moet worden gebruikt. Voeg php5 toe aan het begin van de opdracht om de Debian-versie te gebruiken. Als je niet zeker weet wat je precies gebruikt, volg dan de symlink / usr / bin / php en gebruik de eindbestemming als prefix.

Voeg andere PHP-versies toe

Momenteel zijn er 3-versies beschikbaar op https://packages.sury.org/php/ en je moet nu de laatste stap herhalen voor elke versie die je gaat installeren. Maar gebruik in plaats daarvan de volgende instellingen:

PHP 5.6

Pad naar het PHC FastCGI binaire bestand: php-cgi5.6
Pad naar de php.ini-map: /etc/php/5.6/cgi/php.ini

Pad naar het script PHP-FPM init: php-fpm5.6
Pad naar de php.ini-map: /etc/php/5.6/fpm/php.ini
Pad naar de PHP-FPM poolmap: /etc/php/5.6/fpm/pool.d

De cli-versie voor bijvoorbeeld cron-taken heeft de naam php5.6.

PHP 7.0

Pad naar het PHC FastCGI binaire bestand: php-cgi7.0
Pad naar de php.ini-map: /etc/php/7.0/cgi/php.ini

Pad naar het script PHP-FPM init: php-fpm7.0
Pad naar de php.ini-map: /etc/php/7.0/fpm/php.ini
Pad naar de PHP-FPM poolmap: /etc/php/7.0/fpm/pool.d

De cli-versie voor bijvoorbeeld cron-taken heeft de naam php7.0.

PHP 7.1

Pad naar het PHC FastCGI binaire bestand: php-cgi7.1
Pad naar de php.ini-map: /etc/php/7.1/cgi/php.ini

Pad naar het script PHP-FPM init: php-fpm7.1
Pad naar de php.ini-map: /etc/php/7.1/fpm/php.ini
Pad naar de PHP-FPM poolmap: /etc/php/7.1/fpm/pool.d

De cli-versie voor bijvoorbeeld cron-taken heeft de naam php7.1.

3 Verander de PHP-versie van websites

U kunt deze stap overslaan als u geen Debian-versie van PHP hebt geïnstalleerd.

Verander nu de PHP-versie van alle websites naar de nieuw gecreëerde versie (bijv. Debian 5.6).

En vergeet niet om de cron-taken zoals hierboven vermeld te wijzigen.

4 Voeg de repository toe op packages.sury.org

Om de repository op packages.sury.org en de BGP-sleutels toe te voegen, gebruik je deze opdracht om:

apt-get install apt-transport-https lsb-release ca-certificaten
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
apt-get update

Alleen pakketten voor Debian 8 (Jessie) en Debian 9 (Stretch) zijn beschikbaar, gebruik het niet voor andere releases!

Gebruik deze opdracht om reeds geïnstalleerde pakketten vanuit de nieuwe repository te upgraden:

apt-get-upgrade

5 Installeer PHP vanaf packages.sury.org

Ik bied hier meerdere opties om te installeren, kies de gewenste versies en sla gewoon de rest over!

5.1 Installeer PHP 5.6

Om PHP te installeren, gebruikt u deze opdracht:

apt-get install php5.6 php5.6-cli php5.6-cgi php5.6-fpm

5.2 Installeer PHP 7.0

Om PHP te installeren, gebruikt u deze opdracht:

apt-get install php7.0 php7.0-cli php7.0-cgi php7.0-fpm

5.3 Installeer PHP 7.1

Om PHP te installeren, gebruikt u deze opdracht:

apt-get install php7.1 php7.1-cli php7.1-cgi php7.1-fpm

5.4 Installeer de nieuwste PHP-versie

Gebruik deze opdracht om de nieuwste PHP-versie te installeren:

apt-get install php php-cli php-cgi php-fpm

6 Memcache-extensie installeren (optioneel)

Om Memcache te installeren, gebruikt u deze opdracht:

apt-get install php-memcache php-memcached

7 APCu-extensie installeren (optioneel)

Om de APC-gebruikerscache te installeren, gebruikt u deze opdracht:

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

8 xDebug-extensie installeren (optioneel)

De Xdebug module is een debugging-extensie voor PHP. De installatie is optioneel.

Om xDebug te installeren, gebruik je deze opdracht:

apt-get install php-xdebug

Dit pakket lijkt andere standaardinstellingen te hebben dan het Debian-pakket php5-xdebug. Afhankelijk van je software moet je instellingen zoals xdebug.max_nesting_level wijzigen om het te laten draaien!

9 Installeer andere extensies (optioneel)

Er zijn veel extra extensies die u voor PHP kunt installeren. Hier is een lijst met beschikbare pakketten, waarvan sommige afzonderlijk voor elke versie moeten worden geïnstalleerd. Verwijder eenvoudigweg pakketten die u niet gaat gebruiken uit de volgende opdrachten:

9.1 Versie-onafhankelijke pakketten

apt-get install

9.2 Versie-afhankelijke pakketten

apt-get install

10 Start FPM-daemon opnieuw

Eindelijk herstart de php-fpm daemon, voer de commando's uit voor de eerder geïnstalleerde:

service php5.6-fpm opnieuw opstarten

service php7.0-fpm opnieuw opstarten

service php7.1-fpm opnieuw opstarten

11 Links

bron