Live Chat Software by Kayako |
Sep 16 |
Install Multiple PHP Versions on Plesk 11.5 CentOS 6.4 x64
Posted by James Moore on 16 September 2013 06:41 pm |
An automated Plesk 11.0.9 Update #56 [1-Aug-2013] update upgraded PHP to 5.4.x breaking older sites hosted on the server. Our Admins noticed that Plesk Linux 11.5 finally supported multiple versions of PHP, much like the Plesk Windows version. After upgrading to Plesk 11.5 we discovered that the installation instructions to install multiple versions of PHP were slightly incomplete. After banging our heads against the wall we finally found someone who posted: Compiling multiple PHP versions for Plesk 11.5 ( CentOS 6.4 x64 ) that was able to resolve the problem, but unfortunately there we still a few things missing. Here are the steps we took to get PHP 5.2.17 & PHP 5.3.27 installed on CentOS 6.4 x64. Update the system and packagesyum -y update && yum -y install wget screen && reboot Store the timezone, we’ll need to add this to the php.ini later. timezone=$(grep -oP '(?<=")\w+/\w+' /etc/sysconfig/clock) Add the EPEL repository for mcrypt. rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm Update/Install all the packages PHP will need. yum -y install gcc make gcc-c++ cpp kernel-headers.x86_64 libxml2-devel openssl-devel bzip2-devel libjpeg-devel libpng-devel freetype-devel openldap-devel postgresql-devel aspell-devel net-snmp-devel libxslt-devel libc-client-devel libicu-devel gmp-devel curl-devel libmcrypt-devel unixODBC-devel pcre-devel sqlite-devel db4-devel enchant-devel libXpm-devel mysql-devel readline-devel libedit-devel recode-devel libtidy-devel The one thing that was unique to our environments was mcrypt had to be downgraded in order for libmcrypt-devel to be installed. yum downgrade libmcrypt Download PHP 5.2.17wget http://museum.php.net/php5/php-5.2.17.tar.gz -O /usr/local/src/php-5.2.17.tar.gz Extract PHP 5.2.17, and change to the new directory. tar xzvf /usr/local/src/php-5.2.17.tar.gz -C /usr/local/src/ cd /usr/local/src/php-5.2.17/ Configure PHP ./configure --with-libdir=lib64 --cache-file=./config.cache --prefix=/usr/local/php-5.2.17 --with-config-file-path=/usr/local/php-5.2.17/etc --disable-debug --with-pic --disable-rpath --with-bz2 --with-curl --with-freetype-dir=/usr/local/php-5.2.17 --with-png-dir=/usr/local/php-5.2.17 --enable-gd-native-ttf --without-gdbm --with-gettext --with-gmp --with-iconv --with-jpeg-dir=/usr/local/php-5.2.17 --with-openssl --with-pspell --with-pcre-regex --with-zlib --enable-exif --enable-ftp --enable-sockets --enable-sysvsem --enable-sysvshm --enable-sysvmsg --enable-wddx --with-kerberos --with-unixODBC=/usr --enable-shmop --enable-calendar --with-libxml-dir=/usr/local/php-5.2.17 --enable-pcntl --with-imap --with-imap-ssl --enable-mbstring --enable-mbregex --with-gd --enable-bcmath --with-xmlrpc --with-ldap --with-ldap-sasl --with-mysql=/usr --with-mysqli --with-snmp --enable-soap --with-xsl --enable-xmlreader --enable-xmlwriter --enable-pdo --with-pdo-mysql --with-pdo-pgsql --with-pear=/usr/local/php-5.2.17/pear --with-mcrypt --without-pdo-sqlite --with-config-file-scan-dir=/usr/local/php-5.2.17/php.d --enable-fastcgi Make && Make Install make -j $(grep processor /proc/cpuinfo | wc -l) [ ! -d "/usr/local/php-5.2.17/" ] && make install Copy the php.ini to the new location. cp /usr/local/src/php-5.2.17/php.ini-recommended /usr/local/php-5.2.17/etc/php.ini Include the timezone in the php.ini sed -i "s#;date.timezone =#date.timezone = $timezone#" /usr/local/php-5.2.17/etc/php.ini Finally use the following command to add the new PHP install to the Plesk Panel, PHP version selection. /usr/local/psa/bin/php_handler --add -displayname "5.2.17" -path /usr/local/php-5.2.17/bin/php-cgi -phpini /usr/local/php-5.2.17/etc/php.ini -type fastcgi -id "fastcgi-5.2.17" Download PHP 5.3.27
wget http://be2.php.net/get/php-5.3.27.tar.gz/from/this/mirror -O /usr/local/src/php-5.3.27.tar.gz Extract and change to the directory
tar xzvf /usr/local/src/php-5.3.27.tar.gz -C /usr/local/src/
cd /usr/local/src/php-5.3.27/ Configure PHP 5.3.27
./configure --with-libdir=lib64 --cache-file=./config.cache --prefix=/usr/local/php-5.3.27 --with-config-file-path=/usr/local/php-5.3.27/etc --disable-debug --with-pic --disable-rpath --with-bz2 --with-curl --with-freetype-dir=/usr/local/php-5.3.27 --with-png-dir=/usr/local/php-5.3.27 --enable-gd-native-ttf --without-gdbm --with-gettext --with-gmp --with-iconv --with-jpeg-dir=/usr/local/php-5.3.27 --with-openssl --with-pspell --with-pcre-regex --with-zlib --enable-exif --enable-ftp --enable-sockets --enable-sysvsem --enable-sysvshm --enable-sysvmsg --enable-wddx --with-kerberos --with-unixODBC=/usr --enable-shmop --enable-calendar --with-libxml-dir=/usr/local/php-5.3.27 --enable-pcntl --with-imap --with-imap-ssl --enable-mbstring --enable-mbregex --with-gd --enable-bcmath --with-xmlrpc --with-ldap --with-ldap-sasl --with-mysql=/usr --with-mysqli --with-snmp --enable-soap --with-xsl --enable-xmlreader --enable-xmlwriter --enable-pdo --with-pdo-mysql --with-pdo-pgsql --with-pear=/usr/local/php-5.3.27/pear --with-mcrypt --without-pdo-sqlite --with-config-file-scan-dir=/usr/local/php-5.3.27/php.d --without-sqlite3 --enable-intl Make and Make Install
make -j $(grep processor /proc/cpuinfo | wc -l)
[ ! -d "/usr/local/php-5.3.27/" ] && make install Copy php.ini to install directory
cp -a /etc/php.ini /usr/local/php-5.3.27/etc/php.ini Set the timezone in the php.ini file.
sed -i "s#;date.timezone =#date.timezone = $timezone#" /usr/local/php-5.3.27/etc/php.ini Finally use the following command to add the new PHP install to the Plesk Panel, PHP version selection.
/usr/local/psa/bin/php_handler --add -displayname "5.3.27" -path /usr/local/php-5.3.27/bin/php-cgi -phpini /usr/local/php-5.3.27/etc/php.ini -type fastcgi -id "fastcgi-5.3.27"
Hopefully that helps some of you out there who are having trouble getting PHP installed on Plesk 11.5
The post Install Multiple PHP Versions on Plesk 11.5 CentOS 6.4 x64 appeared first on from the Webtivity Blog. | |