apt install lsb-release ca-certificates apt-transport-https software-properties-common gnupg1 # gnupg2 echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/sury-php.list wget -qO - https://packages.sury.org/php/apt.gpg | apt-key add - apt update apt-cache search --names-only "^php8.*-mongodb" # as of aug 2022 ver=8.1
one needs FPM
apt install php$ver php$ver-fpm
and additional modules e.g. for roundcube you might want
apt install \
php$ver-xml \
php$ver-mbstring \
php$ver-intl \
php$ver-ldap \
php$ver-sqlite3 \
php$ver-mysql \
php$ver-pspell \
php$ver-curl \
php-pear \
php$ver-gd \
php$ver-imagick \
php$ver-zip
# dependent version (unused)
#apt install \
# php-auth-sasl \
# php-net-smtp \
# php-mail-mime \
# php-guzzlehttp-promises \
mv -i /etc/php/$ver/fpm/php.ini /etc/php/$ver/fpm/php.ini.dist
grep -vE '^;|^$' /etc/php/$ver/fpm/php.ini.dist > /etc/php/$ver/fpm/php.ini.clean
grep -vE '^;|^$' /etc/php/$ver/fpm/php.ini.dist > /etc/php/$ver/fpm/php.ini
vi /etc/php/$ver/fpm/php.ini
cp -pi /etc/php/$ver/fpm/php.ini /etc/php/$ver/fpm/php.ini.dist
vi /etc/php/$ver/fpm/php.ini
[PHP]
; legacy behavior still required for roundcube?
cgi.fix_pathinfo=0
; default was 2M
upload_max_filesize = 5M
; default is fine
;post_max_size = 8M
[Date]
date.timezone = Europe/Paris
date.timezone = Europe/Moscow
apply
systemctl restart php$ver-fpm
systemctl status php$ver-fpm # already enabled
ls -lF /var/run/php/php$ver-fpm.sock
https://packages.sury.org/php/
https://computingforgeeks.com/how-to-install-php-on-debian-linux/