{{tag>Logiciel}}
====== PHP : un langage de programmation libre ======
Pour le Raspberry Pi, tout faire en ligne de commande via SSH.
Nginx utilise PHP-FMP (une version plus rapide de PHP) plutôt qu’un PHP plus traditionnel.
C'est pourquoi nous installons **php-fpm** pour gérer les fichiers PHP avec Nginx.
===== Pré-requis =====
===== Installation =====
- **Installez php** :USER@MACHINE:~$ sudo apt install php
- **Repérez la version de php** :USER@MACHINE:~$ php -v
PHP 7.4.3 (cli) ...Ici, la version de php installée est 7.4. Mettez-la en variable :USER@MACHINE:~$ __=$(php -v);phpver=php${__:4:3};echo $phpver
php7.4
- **Installez les modules de php** :USER@MACHINE:~$ sudo apt install $phpver-{fpm,gd,curl,intl,xmlrpc,mbstring,mysql,sqlite,xml,zip}
- **Selon vos besoins, installez** USER@MACHINE:~$ sudo apt install lib$phpver-embed
USER@MACHINE:~$ sudo apt install $phpver-{cgi,cli,common,dev,gmp,json,ldap,odbc,opcache,pgsql,pspell,readline,snmp,sqlite3,tidy,bcmath,bz2,dba,enchant,imap,interbase,phpdbg,soap,sybase,xsl}
USER@MACHINE:~$ sudo apt install php-{gearman,geoip,gnupg,xdebug,amqp,apcu,apcu-bc,ds,gmagick,igbinary,imagick,lua,mailparse,memcache,memcached,mongodb,msgpack,oauth,pinba,propro}
USER@MACHINE:~$ sudo apt install php-{ps,radius,raphf,redis,rrd,sass,solr,ssh2,stomp,tideways,uploadprogress,uuid,yaml,zmq,http}FIXME php-pcov et php-psr introuvables
- **Démarrez le service fpm** : USER@MACHINE:~$ sudo systemctl restart php7.4-fpm.service
- **Repérez le socket d’écoute de php-fpm** :USER@MACHINE:~$ ls -l /var/run/php
...
-rw-r--r-- 1 root root 5 sept. 7 18:42 php7.4-fpm.pid
srw-rw---- 1 www-data www-data 0 sept. 7 18:42 php7.4-fpm.sock
lrwxrwxrwx 1 root root 30 sept. 7 11:34 php-fpm.sock -> /etc/alternatives/php-fpm.sockIci, il faudra utiliser **/var/run/php/php7.4-fpm.sock** dans les fichiers de configuration de nginx
- **Vérifiez votre installation de PHP FPM** :USER@MACHINE:~$ sudo systemctl status php7.4-fpm.service
● php7.4-fpm.service - The PHP 7.4 FastCGI Process Manager
...
Active: active (running) since Mon 2020-09-07 18:42:26 CEST; 7min ago
...
- **Redémarrez le module php-fpm** pour valider la configuration :USER@MACHINE:~$ sudo systemctl restart php7.4-fpm.service
===== Configuration =====
Configuration de l'envoi d'email par PHP
- **Installez [[apt>exim4-config]]**USER@MACHINE:~$ sudo apt install {exim4-config}
- Lancez la configuration :USER@MACHINE:~$ sudo dpkg-reconfigure exim4-config
- Acceptez la première page (Tab puis Entrée)
- 2e page : sélectionnez **Envoi par relais (« smarthost ») — réception SMTP ou ...** puis .
- Acceptez les réglages par défaut sauf pour la page **Nom réseau ou adresse IP du système « smarthost » :** sur laquelle vous entrez l’adresse du serveur SMTP de votre fournisseur d’accès à internet
- Pour les autres options, laissez les paramètres par défaut proposés. Cela suffira pour activer l’envoi de mail avec PHP. Les e-mails envoyés avec la fonction mail() arriveront car le serveur local transmet la demande d’envoi au serveur de votre FAI.
===== Utilisation =====
===== Désinstallation =====
===== Problèmes connus =====
===== Voir aussi =====
* **(fr)** [[https://www.php.net/manual/fr/index.php|Manuel PHP]]
----
//Basé sur << [[https://www.php.net/manual/fr/index.php|Manuel PHP]] >> par php.net.//