PhpSwitcher: add APCU, Imagick and IONCUBE

  • WARNING This script is not supported by i-MSCP team and its usage is not commended WARNING


    (Maybe you should check my new post using precompiled php versions: PhpSwitcher with precompiled php packages)


    Changelog:


    What this script is doing:

    • Compile PHP Versions
    • Adding APCU support
    • Adding Imagick support
    • Adding Ioncube support
    • Enabling some default extensions

    Why I wrote this?

    Every time a new PhpSwitcher plugin or PHP version is released I had to do the steps to enable APCU for two versions - so I decided to build a shell script which is doing all together. It is maybe not the best script, but it is working for me :-).

    And all in all the basic was optimized by Starlight which has much better skills of doing batch scripts :-) big thx!


    Tested on:

    • Ubuntu 18.04 LTS (x64)
    • I-MSCP 1.5.3
    • PhpSwitcher 5.0.1
    • Tested PHP versions
      • 5.6.40
      • 7.1.33
      • 7.2.32
      • 7.3.20
      • 7.4.8

    PHP >= 7.4.8:

    Till php 7.4.7 the original code is working fine. If you plan to update to > 7.4.7 please read the Athar post. For me solution 2 without environment variable worked. PhpSwitcher and 7.4.8


    Not working:

    • Seems to work fine :-)

    How to use:

    First of all configure your PhpSwitcher and compile all needed versions (inclusive registration). Then modify the script as you like but make sure to remove php version parts you do not need. Then you can execute this script which is adding some features on top (please take a look into the script to see what it does!).


    Be careful: Installing some addons like APCu needs confirmations. So you cannot let it run in the background. (The script tries to not prompt you and do a default install for all addons.)

    APCU: There are two versions for APCU. Verison 4 for php versions below 7.0 and version 5 for php7. That is why the script adds two different versions. If there are new APCU versions the pecl path needs to be changed matching the new version numbers.
    Ioncube: A source code protection and licensing addon. Special thx to Speedy for his information!

    Imagick: I personaly need it for my nextcloud environment.


    How to update php versions in PhpSwitcher:

    Just edit the file /var/www/imscp/gui/plugins/PhpSwitcher/PhpCompiler/php_compiler.pl. There is a variable %VERSION_NAME_TO_VERSION_TINY_MAP. There you can define the versions you need or want. Here is an example how it could look like:


    Version 2.0 (optimized version of Starlight ) :


    WARNING This script is not supported by i-MSCP team and its usage is not commended WARNING

    Edited 32 times, last by UncleSam: See changelog. ().

  • Tested on:

    • Debian 8.7 (x64)
    • I-MSCP 1.3.9 (Horner)
    • PhpSwitcher Version 2.3.2

    No Problem



    Php 7.1 Non compatitur

    my System :

    - Distribution: Debian | Release: 9.13 | Codename: wheezy
    - i-MSCP Version: i-MSCP 1.5.3| Build: 20181208 | Codename: Ennio Morricone
    - Plugins installed: ClamAV (v. 1.3.0), Mailgraph (v 1.1.1), OpenDKIM (v 2.0.0), SpamAssassin (v 2.0.1)
    - LetsEncrypt (v3.3.0), PhpSwitcher (v 5.0.5), RoundcubePlugins (v 2.0.2)YubiKeyAuth 1.1.0

  • Linux (32 bits) tar.gz zip Uploader 6.0.9 2017-1-26 UPDATED
    Linux (64 bits) tar.gz zip Uploader 6.0.9 2017-1-26 UPDATED




    stable 2017-01-16 apcu-5.1.8.tgz (108.7kB) DLL [Changelog]

    my System :

    - Distribution: Debian | Release: 9.13 | Codename: wheezy
    - i-MSCP Version: i-MSCP 1.5.3| Build: 20181208 | Codename: Ennio Morricone
    - Plugins installed: ClamAV (v. 1.3.0), Mailgraph (v 1.1.1), OpenDKIM (v 2.0.0), SpamAssassin (v 2.0.1)
    - LetsEncrypt (v3.3.0), PhpSwitcher (v 5.0.5), RoundcubePlugins (v 2.0.2)YubiKeyAuth 1.1.0

  • Php 7.1 is now compatible


    Changes.



    my System :

    - Distribution: Debian | Release: 9.13 | Codename: wheezy
    - i-MSCP Version: i-MSCP 1.5.3| Build: 20181208 | Codename: Ennio Morricone
    - Plugins installed: ClamAV (v. 1.3.0), Mailgraph (v 1.1.1), OpenDKIM (v 2.0.0), SpamAssassin (v 2.0.1)
    - LetsEncrypt (v3.3.0), PhpSwitcher (v 5.0.5), RoundcubePlugins (v 2.0.2)YubiKeyAuth 1.1.0

  • Linux (32 bits) tar.gz zip Uploader 10.0.3 2017-09-26
    Linux (64 bits) tar.gz zip Uploader 10.0.3 2017-09-26

    my System :

    - Distribution: Debian | Release: 9.13 | Codename: wheezy
    - i-MSCP Version: i-MSCP 1.5.3| Build: 20181208 | Codename: Ennio Morricone
    - Plugins installed: ClamAV (v. 1.3.0), Mailgraph (v 1.1.1), OpenDKIM (v 2.0.0), SpamAssassin (v 2.0.1)
    - LetsEncrypt (v3.3.0), PhpSwitcher (v 5.0.5), RoundcubePlugins (v 2.0.2)YubiKeyAuth 1.1.0

  • Beta Loaders for PHP 7.2
    The following are beta ionCube Loaders that can be used with the release candidate (RC) versions of PHP 7.2.0 on Linux and FreeBSD 9. They can run files encoded with the version 10 PHP 7.1 Encoder. As with PHP 7.2.0 RC versions themselves, these loaders should not be used in a production environment.




    Linux (32 bits) tar.gz 10.1.0-beta 2017-10-04 UPDATED
    Linux (64 bits) tar.gz 10.1.0-beta 2017-10-04 UPDATED

    my System :

    - Distribution: Debian | Release: 9.13 | Codename: wheezy
    - i-MSCP Version: i-MSCP 1.5.3| Build: 20181208 | Codename: Ennio Morricone
    - Plugins installed: ClamAV (v. 1.3.0), Mailgraph (v 1.1.1), OpenDKIM (v 2.0.0), SpamAssassin (v 2.0.1)
    - LetsEncrypt (v3.3.0), PhpSwitcher (v 5.0.5), RoundcubePlugins (v 2.0.2)YubiKeyAuth 1.1.0

  • Linux (32 Bit) tar.gz Reißverschluss Uploader 10.0.4 2017-11-01 AKTUALISIERT
    Linux (64 Bit) tar.gz Reißverschluss Uploader 10.0.4 2017-11-01 AKTUALISIERT

    my System :

    - Distribution: Debian | Release: 9.13 | Codename: wheezy
    - i-MSCP Version: i-MSCP 1.5.3| Build: 20181208 | Codename: Ennio Morricone
    - Plugins installed: ClamAV (v. 1.3.0), Mailgraph (v 1.1.1), OpenDKIM (v 2.0.0), SpamAssassin (v 2.0.1)
    - LetsEncrypt (v3.3.0), PhpSwitcher (v 5.0.5), RoundcubePlugins (v 2.0.2)YubiKeyAuth 1.1.0

  • Linux (32 bits) tar.gz zip Uploader 10.1.0 2017-12-14 UPDATED
    Linux (64 bits) tar.gz zip Uploader 10.1.0 2017-12-14 UPDATED


    Inclusiv php 7.2 beta

    my System :

    - Distribution: Debian | Release: 9.13 | Codename: wheezy
    - i-MSCP Version: i-MSCP 1.5.3| Build: 20181208 | Codename: Ennio Morricone
    - Plugins installed: ClamAV (v. 1.3.0), Mailgraph (v 1.1.1), OpenDKIM (v 2.0.0), SpamAssassin (v 2.0.1)
    - LetsEncrypt (v3.3.0), PhpSwitcher (v 5.0.5), RoundcubePlugins (v 2.0.2)YubiKeyAuth 1.1.0

  • Important changes:
    A bug prevented that ioncube was getting an update. So the new version does remove old package and folder before downloading it again. Reason is, that by downloading it the system appends ".1", ".2", ... and so on an that was the reason why old version were used. The new version also included some fixes and 7.2 preperation (as soon as it is here it should work) - check out the changelog area.

  • Linux (32 bits) tar.gz zip 10.2.0 2018-03-06 UPDATED
    Linux (64 bits) tar.gz zip 10.2.0 2018-03-06 UPDATED

    my System :

    - Distribution: Debian | Release: 9.13 | Codename: wheezy
    - i-MSCP Version: i-MSCP 1.5.3| Build: 20181208 | Codename: Ennio Morricone
    - Plugins installed: ClamAV (v. 1.3.0), Mailgraph (v 1.1.1), OpenDKIM (v 2.0.0), SpamAssassin (v 2.0.1)
    - LetsEncrypt (v3.3.0), PhpSwitcher (v 5.0.5), RoundcubePlugins (v 2.0.2)YubiKeyAuth 1.1.0