nextcloud_itopie.md: made some changes with luca@pca.it authored by Donna Sayed's avatar Donna Sayed
......@@ -5,39 +5,52 @@
### Installation de PHP
#### PHP 8.2
1. Ajout du dépôt [[sury|https://packages.sury.org/php/]] pour PHP
- Suivre les indications du [[README|https://packages.sury.org/php/README.txt]]
1. Ajout du dépôt [[sury|https://packages.sury.org/php/]] pour PHP, en suivant les indications du [[README|https://packages.sury.org/php/README.txt]] :
```
# cd /tmp
# wget https://packages.sury.org/debsuryorg-archive-keyring.deb
# dpkg -i ./debsuryorg-archive-keyring.deb
# echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(awk -F '=' '/VERSION_CODENAME=/ {print $NF}' /etc/os-release) main" > /etc/apt/sources.list.d/php.list
# apt update
# rm debsuryorg-archive-keyring.deb
```
1. Installation des paquets php nécessaires pour Nextcloud \
**NB**, pour vérifier les modules installés : `php -m | grep -i <module_name>`
```
# apt install php8.2-{apcu,bcmath,cli,common,ctype,curl,dom,exif,fpm,ftp,gd,gmp,imagick,imap,intl,ldap,mbstring,pgsql,posix,redis,smbclient,xml,xsl,zip}
```
**NB**, pour vérifier les modules installés : `php -m | grep -i <module_name>`
1. Éditer la configuration de PHP FPM : `etc/php/8.x/fpm/php.ini`
- _A modifier_ : **paramètres opcache**, **tiemzone** et **la limite mémoire**.
```
# cat /etc/php/8.2/fpm/php.ini | grep ^opcache
# cat << EOF > /etc/php/8.2/fpm/conf.d/99-local_opcache.ini
### <https://docs.nextcloud.com/server/latest/admin_manual/installation/server_tuning.html>
opcache.enable=1
opcache.memory_consumption=256
opcache.interned_strings_buffer=16
opcache.max_accelerated_files=10000
opcache.revalidate_freq=1
opcache.save_comments=1
EOF
# cat /etc/php/8.2/fpm/php.ini | grep ^date.timezone
# cat << EOF > /etc/php/8.2/fpm/conf.d/99-local_timezone.ini
date.timezone = Europe/Zurich
EOF
# cat /etc/php/8.2/fpm/php.ini | grep ^memory_limit
# cat << EOF > /etc/php/8.2/fpm/conf.d/99-local_memory.ini
memory_limit = 512M
EOF
```
1. Éditer la configuration de PHP CLI : `/etc/php/8.x/cli/php.ini`
```
# cat /etc/php/8.2/cli/php.ini | grep ^date.timezone
# cat << EOF > /etc/php/8.2/cli/conf.d/99-local_timezone.ini
date.timezone = Europe/Zurich
EOF
```
1. Ajouter le fichier nextcloud.conf dans /etc/php/8.x/fpm/pool.d/ \
**NB**, ce fichier contient la configuration du socket Unix pour l'exécution des requêtes PHP. \
**ATTENTION**, les valeurs de ce fichiers doivent être adaptées en fonction des ressources de la machine. Il existe un [[calculateur en ligne|https://spot13.com/pmcalculator/]] qui permet de les calculer.
```
# cat << EOF > /etc/php/8.2/fpm/pool.d/nextcloud.conf
[nextcloud]
listen = /run/php/php8.2-fpm-nextcloud.sock ; The access log file
listen.owner = www-data ; Default: not set
......@@ -65,6 +78,7 @@
php_flag[display_errors] = on ; - HTTP headers like: %{HTTP_HOST}e or %{HTTP_USER_AGENT}e
php_admin_value[error_log] = /var/log/fpm-php.nextcloud.log ; %f: script filename
php_admin_flag[log_errors] = on
EOF
```
1. Fixer la version active de PHP : `# update-alternatives --config php`
1. Redémarrer PHP-FPM : `# systemctl restart php8.2-fpm.service`
......
......