How to install multiple PHP versions on VestaCP
This how to will enable PHP 5.6, 7.0, 7.1, 7.2, 7.3 and 7.4 to specific/desired domains.
Tutorial is for Debian and Ubuntu.
First pre-required step for Debian 9 Strech:
apt-get update apt install apt-transport-https ca-certificates wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg sh -c 'echo "deb https://packages.sury.org/php/ stretch main" > /etc/apt/sources.list.d/php.list'
First pre-required step for Debian 8 Jessie:
apt-get update apt install apt-transport-https ca-certificates wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg sh -c 'echo "deb https://packages.sury.org/php/ jessie main" > /etc/apt/sources.list.d/php.list'
First pre-required step for Ubuntu:
apt-get update apt install apt-transport-https ca-certificates wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
Then in your browser go to https://launchpad.net/~ondrej/+archive/ubuntu/php/
Under Adding this PPA to your system click Technical details about this PPA, select your Ubuntu version, and two lines that you get from field box below add to /etc/apt/sources.list.d/php.list
Add php repository
sudo add-apt-repository ppa:ondrej/php sudo apt-get update
Second pre-required step for both Debian and Ubuntu:
apt-get update a2enmod proxy_fcgi setenvif
For PHP 5.6
apt-get install php5.6-apcu php5.6-mbstring php5.6-bcmath php5.6-cli php5.6-curl php5.6-fpm php5.6-gd php5.6-intl php5.6-mcrypt php5.6-mysql php5.6-soap php5.6-xml php5.6-zip php5.6-memcache php5.6-memcached php5.6-zip update-rc.d php5.6-fpm defaults a2enconf php5.6-fpm systemctl restart apache2 cp -r /etc/php/5.6/ /root/vst_install_backups/php5.6/ rm -f /etc/php/5.6/fpm/pool.d/* wget http://dl.mycity.tech/vesta/php-fpm-tpl/PHP-FPM-56.stpl -O /usr/local/vesta/data/templates/web/apache2/PHP-FPM-56.stpl wget http://dl.mycity.tech/vesta/php-fpm-tpl/PHP-FPM-56.tpl -O /usr/local/vesta/data/templates/web/apache2/PHP-FPM-56.tpl wget http://dl.mycity.tech/vesta/php-fpm-tpl/PHP-FPM-56.sh -O /usr/local/vesta/data/templates/web/apache2/PHP-FPM-56.sh chmod a+x /usr/local/vesta/data/templates/web/apache2/PHP-FPM-56.sh
For PHP 7.0
apt-get install php7.0-apcu php7.0-mbstring php7.0-bcmath php7.0-cli php7.0-curl php7.0-fpm php7.0-gd php7.0-intl php7.0-mcrypt php7.0-mysql php7.0-soap php7.0-xml php7.0-zip php7.0-memcache php7.0-memcached php7.0-zip update-rc.d php7.0-fpm defaults a2enconf php7.0-fpm systemctl restart apache2 cp -r /etc/php/7.0/ /root/vst_install_backups/php7.0/ rm -f /etc/php/7.0/fpm/pool.d/* wget http://dl.mycity.tech/vesta/php-fpm-tpl/PHP-FPM-70.stpl -O /usr/local/vesta/data/templates/web/apache2/PHP-FPM-70.stpl wget http://dl.mycity.tech/vesta/php-fpm-tpl/PHP-FPM-70.tpl -O /usr/local/vesta/data/templates/web/apache2/PHP-FPM-70.tpl wget http://dl.mycity.tech/vesta/php-fpm-tpl/PHP-FPM-70.sh -O /usr/local/vesta/data/templates/web/apache2/PHP-FPM-70.sh chmod a+x /usr/local/vesta/data/templates/web/apache2/PHP-FPM-70.sh
For PHP 7.1
apt-get install php7.1-apcu php7.1-mbstring php7.1-bcmath php7.1-cli php7.1-curl php7.1-fpm php7.1-gd php7.1-intl php7.1-mcrypt php7.1-mysql php7.1-soap php7.1-xml php7.1-zip php7.1-memcache php7.1-memcached php7.1-zip update-rc.d php7.1-fpm defaults a2enconf php7.1-fpm systemctl restart apache2 cp -r /etc/php/7.1/ /root/vst_install_backups/php7.1/ rm -f /etc/php/7.1/fpm/pool.d/* wget http://dl.mycity.tech/vesta/php-fpm-tpl/PHP-FPM-71.stpl -O /usr/local/vesta/data/templates/web/apache2/PHP-FPM-71.stpl wget http://dl.mycity.tech/vesta/php-fpm-tpl/PHP-FPM-71.tpl -O /usr/local/vesta/data/templates/web/apache2/PHP-FPM-71.tpl wget http://dl.mycity.tech/vesta/php-fpm-tpl/PHP-FPM-71.sh -O /usr/local/vesta/data/templates/web/apache2/PHP-FPM-71.sh chmod a+x /usr/local/vesta/data/templates/web/apache2/PHP-FPM-71.sh
For PHP 7.2
Some information
In latest version of VestaCP
Version: 0.9.8 (amd64) Release: 24
PHP 7.2 installed by default.
apt-get install php7.2-apcu php7.2-mbstring php7.2-bcmath php7.2-cli php7.2-curl php7.2-fpm php7.2-gd php7.2-intl php7.2-mysql php7.2-soap php7.2-xml php7.2-zip php7.2-memcache php7.2-memcached php7.2-zip update-rc.d php7.2-fpm defaults a2enconf php7.2-fpm systemctl restart apache2 cp -r /etc/php/7.2/ /root/vst_install_backups/php7.2/ rm -f /etc/php/7.2/fpm/pool.d/* wget http://dl.mycity.tech/vesta/php-fpm-tpl/PHP-FPM-72.stpl -O /usr/local/vesta/data/templates/web/apache2/PHP-FPM-72.stpl wget http://dl.mycity.tech/vesta/php-fpm-tpl/PHP-FPM-72.tpl -O /usr/local/vesta/data/templates/web/apache2/PHP-FPM-72.tpl wget http://dl.mycity.tech/vesta/php-fpm-tpl/PHP-FPM-72.sh -O /usr/local/vesta/data/templates/web/apache2/PHP-FPM-72.sh chmod a+x /usr/local/vesta/data/templates/web/apache2/PHP-FPM-72.sh
For PHP 7.3
apt-get install php7.3-apcu php7.3-mbstring php7.3-bcmath php7.3-cli php7.3-curl php7.3-fpm php7.3-gd php7.3-intl php7.3-mysql php7.3-soap php7.3-xml php7.3-zip php7.3-memcache php7.3-memcached php7.3-zip update-rc.d php7.3-fpm defaults a2enconf php7.3-fpm systemctl restart apache2 cp -r /etc/php/7.3/ /root/vst_install_backups/php7.3/ rm -f /etc/php/7.3/fpm/pool.d/* wget http://dl.mycity.tech/vesta/php-fpm-tpl/PHP-FPM-73.stpl -O /usr/local/vesta/data/templates/web/apache2/PHP-FPM-73.stpl wget http://dl.mycity.tech/vesta/php-fpm-tpl/PHP-FPM-73.tpl -O /usr/local/vesta/data/templates/web/apache2/PHP-FPM-73.tpl wget http://dl.mycity.tech/vesta/php-fpm-tpl/PHP-FPM-73.sh -O /usr/local/vesta/data/templates/web/apache2/PHP-FPM-73.sh chmod a+x /usr/local/vesta/data/templates/web/apache2/PHP-FPM-73.sh
php-fpm-73 failed to start issue
put file https://raw.githubusercontent.com/hestiacp/hestiacp/develop/install/deb/php-fpm/dummy.conf -> /etc/php/7.3/fpm/pool.d and restart php-fpm
UPDATE:
UPDATE
For PHP 7.4
apt-get install php7.4-apcu php7.4-mbstring php7.4-bcmath php7.4-cli php7.4-curl php7.4-fpm php7.4-gd php7.4-intl php7.4-mysql php7.4-soap php7.4-xml php7.4-zip php7.4-memcache php7.4-memcached php7.4-zip update-rc.d php7.4-fpm defaults a2enconf php7.4-fpm systemctl restart apache2 cp -r /etc/php/7.4/ /root/vst_install_backups/php7.4/ rm -f /etc/php/7.4/fpm/pool.d/* wget https://github.com/t0rik/vesta-php-fpm-74/raw/master/PHP-FPM-74.stpl -O /usr/local/vesta/data/templates/web/apache2/PHP-FPM-74.stpl wget https://raw.githubusercontent.com/t0rik/vesta-php-fpm-74/master/PHP-FPM-74.tpl -O /usr/local/vesta/data/templates/web/apache2/PHP-FPM-74.tpl wget https://raw.githubusercontent.com/t0rik/vesta-php-fpm-74/master/PHP-FPM-74.sh -O /usr/local/vesta/data/templates/web/apache2/PHP-FPM-74.sh chmod a+x /usr/local/vesta/data/templates/web/apache2/PHP-FPM-74.sh
Now simply go to Vesta, edit WEB for desired domain and choose: Needed php version.