Documentation du Dr FRAPPE

Ce wiki regroupe les résultats de mes expériences en informatique accumulés au cours de mes recherches sur le net.

Dans la mesure du possible, j'ai cité mes sources ; il en manque certainement… :-)

Ceci est une ancienne révision du document !


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

  1. Installez php :

    ...@...:~$ sudo apt install php

  2. Repérez la version de php :

    ...@...:~$ php -v
    PHP 7.4.3 (cli) ...

    Ici, la version de php installée est 7.4. Mettez-la en variable :

    ...@...:~ $ __=$(php  -v);phpver=php${__:4:3};echo $phpver
    php7.4

  3. Installez les modules de php :

    ...@...:~$ sudo apt install $phpver-{fpm,gd,curl,intl,xmlrpc,mbstring,mysql,sqlite,xml,zip}

  4. Selon vos besoins, installez

    ...@...:~$ sudo apt install lib$phpver-embed
    ...@...:~$ 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}
    ...@...:~$ 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}
    ...@...:~$ 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

  5. Démarrez le service fpm :

    ...@...:~ $ sudo systemctl restart php7.4-fpm.service

  6. Repérez le socket d’écoute de php-fpm :

    ...@...:~ $ 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.sock

    Ici, il faudra utiliser /var/run/php/php7.4-fpm.sock dans les fichiers de configuration de nginx

  7. Vérifiez votre installation de PHP FPM :

    ...@...:~ $ 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
    ...

  8. Redémarrez le module php-fpm pour valider la configuration :

    ...@...:~ $ sudo systemctl restart php7.4-fpm.service

Configuration

Configuration de l'envoi d'email par PHP

  1. Installez le paquet exim4-config ou en ligne de commande :

    ...@...:~$ sudo apt install exim4-config

  2. Lancez la configuration :

    ...@...:~ $ sudo dpkg-reconfigure exim4-config

    1. Acceptez la première page (Tab ⇆ puis ↵ Entrée)
    2. 2e page : sélectionnez Envoi par relais (« smarthost ») — réception SMTP ou … puis <Ok>.
    3. 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
    4. 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

Voir aussi


Basé sur « Manuel PHP » par php.net.