Prochaine révision | Révision précédente |
logiciel:developpement:langage:php:start [2023/07/26 13:14] – créée admin | logiciel:developpement:langage:php:start [2024/09/21 20:00] (Version actuelle) – [Configuration] admin |
---|
| |
<subnumberlist> | <subnumberlist> |
- **Installez php** :<cli prompt='$ '>USER@MACHINE:~$ sudo apt install php</cli> | - **Installer php** :<cli prompt='$ '>:~$ sudo apt install {php}</cli> |
- **Repérez la version de php** :<cli prompt='$ '>USER@MACHINE:~$ php -v | - **Repérer la version de php et la mettre en variable** (ici, la version de php installée est 7.4) :<cli prompt='$ '>:~$ php -v |
PHP 7.4.3 (cli) ...</cli>Ici, la version de php installée est 7.4. Mettez-la en variable :<cli prompt='$ '>USER@MACHINE:~$ __=$(php -v);phpver=php${__:4:3};echo $phpver | PHP 8.3.11 (cli) ... |
php7.4</cli> | |
- **Installez les modules de php** :<cli prompt='$ '>USER@MACHINE:~$ sudo apt install $phpver-{fpm,gd,curl,intl,xmlrpc,mbstring,mysql,sqlite,xml,zip}</cli> | |
- **Selon vos besoins, installez** <cli prompt='$ '>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}</cli>FIXME php-pcov et php-psr introuvables | |
- **Démarrez le service fpm** : <cli prompt='$ '>USER@MACHINE:~$ sudo systemctl restart php7.4-fpm.service</cli> | |
- **Repérez le socket d’écoute de php-fpm** :<cli prompt='$ '>USER@MACHINE:~$ ls -l /var/run/php | |
... | ... |
-rw-r--r-- 1 root root 5 sept. 7 18:42 php7.4-fpm.pid | :~$ __=$(php -v) ; phpver=php${__:4:3} ; echo $phpver |
srw-rw---- 1 www-data www-data 0 sept. 7 18:42 php7.4-fpm.sock | php8.3 |
lrwxrwxrwx 1 root root 30 sept. 7 11:34 php-fpm.sock -> /etc/alternatives/php-fpm.sock</cli>Ici, il faudra utiliser **/var/run/php/php7.4-fpm.sock** dans les fichiers de configuration de nginx | </cli> |
- **Vérifiez votre installation de PHP FPM** :<cli prompt='$ '>USER@MACHINE:~$ sudo systemctl status php7.4-fpm.service | - **Installer les modules de php** :<cli prompt='$ '>:~$ sudo apt install $phpver-{curl,fpm,gd,intl,mbstring,mysql,sqlite,xml,xmlrpc,zip}</cli> |
● php7.4-fpm.service - The PHP 7.4 FastCGI Process Manager | - **Selon les besoins, installer** <cli prompt='$ '>:~$ 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}</cli>FIXME php-pcov et php-psr introuvables<code - > |
| Le paquet php8.3-json est un paquet virtuel fourni par : |
| php8.3-phpdbg 8.3.11-1+ubuntu24.04.1+deb.sury.org+1 |
| php8.3-fpm 8.3.11-1+ubuntu24.04.1+deb.sury.org+1 |
| php8.3-cli 8.3.11-1+ubuntu24.04.1+deb.sury.org+1 |
| php8.3-cgi 8.3.11-1+ubuntu24.04.1+deb.sury.org+1 |
| libphp8.3-embed 8.3.11-1+ubuntu24.04.1+deb.sury.org+1 |
| libapache2-mod-php8.3 8.3.11-1+ubuntu24.04.1+deb.sury.org+1 |
| Vous devez explicitement sélectionner un paquet à installer. |
| </code> |
| - **Démarrer le service fpm** :<cli prompt='$ '>:~$ sudo systemctl restart $phpver-fpm.service</cli> |
| - **Repérer le socket d’écoute de php-fpm** :<cli prompt='$ '>:~$ ls -l /var/run/php |
| ... |
| -rw-r--r-- 1 root root 5 sept. 7 18:42 php8.3-fpm.pid |
| srw-rw---- 1 www-data www-data 0 sept. 7 18:42 php8.3-fpm.sock |
| lrwxrwxrwx 1 root root 30 sept. 7 11:34 php-fpm.sock -> /etc/alternatives/php-fpm.sock</cli>Ici, il faudra utiliser **/var/run/php/php8.3-fpm.sock** dans les fichiers de configuration de nginx |
| - **Vérifier l'installation de PHP FPM** :<cli prompt='$ '>:~$ sudo systemctl status $phpver-fpm.service |
| ● php8.3-fpm.service - The PHP 8.3 FastCGI Process Manager |
... | ... |
Active: active (running) since Mon 2020-09-07 18:42:26 CEST; 7min ago | Active: active (running) since Mon 2020-09-07 18:42:26 CEST; 7min ago |
...</cli> | ...</cli> |
- **Redémarrez le module php-fpm** pour valider la configuration :<cli prompt='$ '>USER@MACHINE:~$ sudo systemctl restart php7.4-fpm.service</cli> | - **Repérer le socket d’écoute de php-fpm** :<cli prompt='$ '>:~$ 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</cli>Ici, il faudra utiliser **/var/run/php/php7.4-fpm.sock** dans les fichiers de configuration de nginx |
| - **Redémarrer le module php-fpm** pour valider la configuration :<cli prompt='$ '>:~$ sudo systemctl restart $phpver-fpm.service</cli> |
</subnumberlist> | </subnumberlist> |
===== Configuration ===== | ===== Configuration ===== |
| |
| |
| |
<subnumberlist> | <subnumberlist> |
- **Configuration de l'envoi d'email par PHP** | - **Envoi d'email par PHP** |
- **Installez [[apt>exim4-config]]**<cli prompt='$ '>USER@MACHINE:~$ sudo apt install {exim4-config}</cli> | - **Installer [[apt>exim4-config]]**<cli prompt='$ '>:~$ sudo apt install exim4-config</cli> |
- Lancez la configuration :<cli prompt='$ '>USER@MACHINE:~$ sudo dpkg-reconfigure exim4-config</cli> | - **Lancer la configuration** :<cli prompt='$ '>:~$ sudo dpkg-reconfigure exim4-config</cli> |
- Acceptez la première page (<key>Tab</key> puis <key>Entrée</key>) | - Accepter la première page (<key>Tab</key> puis <key>Entrée</key>) |
- 2e page : sélectionnez **Envoi par relais (« smarthost ») — réception SMTP ou ...** puis <key><Ok></key>. | - 2e page : sélectionner **Envoi par relais (« smarthost ») — réception SMTP ou ...** puis <key><Ok></key>. |
- 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 | - Accepter les réglages par défaut sauf pour la page **Nom réseau ou adresse IP du système « smarthost » :** sur laquelle il faut entrer l’adresse du serveur SMTP du 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. | - Autres options : laisser les paramètres proposés. Cela active l’envoi de mail avec PHP. Les e-mails envoyés avec la fonction mail() arriveront car la demande d’envoi est trasmise par le serveur local au serveur du FAI. |
- **Augmenter la taille d'upload** | - **Augmenter la taille d'upload** |
- **Éditez avec les droits d'administration le fichier /etc/php/8.1/fpm/pool.d/www.conf** pour ajouter ceci à la fin :<code php /etc/php/8.1/fpm/pool.d/www.conf> | - **Éditez avec les droits d'administration le fichier /etc/php/8.1/fpm/pool.d/www.conf** pour ajouter ceci à la fin :<code php /etc/php/8.1/fpm/pool.d/www.conf> |