From fdb0db7a2c8418ba953d0918cd88e67dcd972518 Mon Sep 17 00:00:00 2001 From: Thomas Constans Date: Mon, 5 Oct 2020 21:30:13 +0200 Subject: [PATCH] initial commit --- Readme.md | 9 ++++++++ correction.md | 64 +++++++++++++++++++++++++++++++++++++++++++++++++++ eval | 11 +++++++++ eval.sh | 18 +++++++++++++++ tp_php-fpm.md | 45 ++++++++++++++++++++++++++++++++++++ 5 files changed, 147 insertions(+) create mode 100644 Readme.md create mode 100644 correction.md create mode 100644 eval create mode 100644 eval.sh create mode 100644 tp_php-fpm.md diff --git a/Readme.md b/Readme.md new file mode 100644 index 0000000..3cf48ce --- /dev/null +++ b/Readme.md @@ -0,0 +1,9 @@ +##### PHP-FPM + +Public: b1 + +Durée: 2h + +Validation: attention à la présence du module / paquet php (le fichier /etc/httpd/conf.d/php.conf ne doit pas exister - ou doit avoir été modifié) + +Todo: rajouter quelques pointeurs vers des docs complètes diff --git a/correction.md b/correction.md new file mode 100644 index 0000000..4338427 --- /dev/null +++ b/correction.md @@ -0,0 +1,64 @@ +Prérequis: Apache, gestion des services et des packages, principe de configuration + +Information et liens utiles: + + * https://blog.remirepo.net/pages/Config + + +### Théorie + +Quelles sont les différences entre php en tant que module apache (paquet php) et php-fpm ? + +module: l'interpréteur est intégré à apache. Pas possible de faire tourner plusieurs versions de php, pb de perf, pb de stabilité. À l'inverse, php-fpm permet d'embarquer un interpréteur dans un service autonome. On peut donc en avoir plusieurs, avec des paramètres de performance différent, des versions différentes. On peut même les faire tourner avec des comptes utilisateurs distincts (1 client -> 1 compte utilisateur -> 1 arborescence utilisateur -> 1 php-fpm dédié) + +Quelle est la version de php disponible par défaut sur RedHat / CentOS ? + +5.4 - complètement obsolète + +Quelle est la dernière version disponible de php ? + +7.4 à ce jour (2020-04-27) + +### Pratique + +Installez php-fpm en version 7.3 + +la version 7.3 n'étant pas disponible par défaut, il faut utiliser un dépôt externe. Pour ce faire, suivre les instructions ici: + + * yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm + * yum install https://rpms.remirepo.net/enterprise/remi-release-7.rpm + * yum install yum-utils + * yum install php73-php-fpm + +Assurez-vous que le service soit activé et démarré + +systemctl enable php73-php-fpm + +systemctl start php73-php-fpm + +Configurez apache pour que toutes les ressources .php soient traitées par php-fpm + +vim /etc/httpd/conf.d/php.conf + + SetHandler proxy:fcgi://localhost:9000 + + + +### Validation + +Créer la page /var/www/html/version.php avec le contenu suivant: + + + /dev/null || systemctl status php73-php-fpm &> /dev/null ) ; then e 1 ; else e 0 ; fi + +if [ -f /var/www/html/version.php ] ; then e 1 ; else e 0 ; fi + +if ( curl localhost/version.php 2>/dev/null |grep -q 7.3 ) ; then e 1 ; else e 0 ; fi +echo diff --git a/tp_php-fpm.md b/tp_php-fpm.md new file mode 100644 index 0000000..378cef5 --- /dev/null +++ b/tp_php-fpm.md @@ -0,0 +1,45 @@ + +Prérequis: Apache, gestion des services et des packages, principe de configuration + +Information et liens utiles: + + * https://blog.remirepo.net/pages/Config + + +### Théorie + +Quelles sont les différences entre php en tant que module apache (paquet php) et php-fpm ? + +Quelles sont les avantages et inconvénients de ces solutions ? + +Quelle est la version de php disponible par défaut sur RedHat / CentOS ? + +Quelle est la dernière version disponible de php ? + +### Pratique + +Installez php-fpm en version 7.3 + +Assurez-vous que le service soit activé et démarré + +Configurez apache pour que toutes les ressources .php soient traitées par php-fpm + +### Validation + +Créer la page version.php dans le DocumentRoot de votre serveur, avec le contenu suivant: + + +