• Please be aware: Kaspersky Anti-Virus has been deprecated
    With the upgrade to Plesk Obsidian 18.0.64, "Kaspersky Anti-Virus for Servers" will be automatically removed from the servers it is installed on. We recommend that you migrate to Sophos Anti-Virus for Servers.
  • The Horde webmail has been deprecated. Its complete removal is scheduled for April 2025. For details and recommended actions, see the Feature and Deprecation Plan.
  • We’re working on enhancing the Monitoring feature in Plesk, and we could really use your expertise! If you’re open to sharing your experiences with server and website monitoring or providing feedback, we’d love to have a one-hour online meeting with you.

Contribution [How-To] Compile PHP Phalcon for PHP 5.4 5.5 5.6 7.0

StéphanS

Regular Pleskian
NOTE: PHP 5.4 is no longer supported

For more info, please refer to:

https://devblog.plesk.com/2015/08/adding-custom-php-modules-in-plesk/


First install some basic dependencies:
Code:
yum install git make gcc glibc-devel zlib-devel

Then create the actual function to build and install PHP Phalcon
Code:
function plesk_php_install_phalcon {
cd
PHP_VERSION="$1"
echo "Building Phalcon for PHP Version: $PHP_VERSION..."
yum -y install plesk-php$(tr -d . <<<$PHP_VERSION)-devel
rm -rfv /opt/plesk/php/$PHP_VERSION/include/php/ext/cphalcon/
rm -fv /opt/plesk/php/$PHP_VERSION/lib64/php/modules/phalcon.so
rm -fv /opt/plesk/php/$PHP_VERSION/etc/php.d/phalcon.ini
cd /opt/plesk/php/$PHP_VERSION/include/php/ext/
git clone --depth=1 git://github.com/phalcon/cphalcon.git
cd /opt/plesk/php/$PHP_VERSION/include/php/ext/cphalcon/build/
sed -i 's#./configure#./configure CFLAGS="-O2"#g' install
PATH=/opt/plesk/php/$PHP_VERSION/bin:$PATH ./install
ls -la /opt/plesk/php/$PHP_VERSION/lib64/php/modules/phalcon.so
echo 'extension=phalcon.so' > /opt/plesk/php/$PHP_VERSION/etc/php.d/phalcon.ini
/opt/plesk/php/$PHP_VERSION/bin/php -v
/opt/plesk/php/$PHP_VERSION/bin/php -i | grep -i phalcon
}

To install run:
Code:
plesk_php_install_phalcon 5.6

Or install for all compatible versions:
Code:
for PHP_VERSION in 5.{5..6}
do
plesk_php_install_phalcon $PHP_VERSION
done

Whenever Phalcon becomes compatible with PHP 7
You can use:
Code:
for PHP_VERSION in {5.{5..6},7.0}
do
plesk_php_install_phalcon $PHP_VERSION
done


Now all that is left is to have Plesk find PHP Phalcon Extension(s):
Code:
plesk bin php_handler --reread



From devblog article (but I didn't need to do this step):

As a final touch, to have the extension appear on the customers’ phpinfo pages, clear the checkbox, click OK, and wait for the changes to be applied, then select the checkbox and apply the changes once again.




EDIT: If you really need PHP Phalcon on PHP 5.4, use:

Code:
cd
PHP_VERSION="5.4"
rm -rfv /opt/plesk/php/$PHP_VERSION/include/php/ext/cphalcon/
cd /opt/plesk/php/$PHP_VERSION/include/php/ext/
git clone -b 2.0.x --depth=1 git://github.com/phalcon/cphalcon.git
cd /opt/plesk/php/$PHP_VERSION/include/php/ext/cphalcon/build/
sed -i 's#./configure#./configure CFLAGS="-O2"#g' install
PATH=/opt/plesk/php/$PHP_VERSION/bin:$PATH ./install
ls -la /opt/plesk/php/$PHP_VERSION/lib64/php/modules/phalcon.so
echo 'extension=phalcon.so' > /opt/plesk/php/$PHP_VERSION/etc/php.d/phalcon.ini
/opt/plesk/php/$PHP_VERSION/bin/php -v
/opt/plesk/php/$PHP_VERSION/bin/php -i | grep -i phalcon
 
Last edited:
Back
Top