Vous êtes ici : Accueil / Debian GNU/Linux / Serveurs / PHP / Installer Zend Guard Loader/Zend Optimizer sur Debian

Installer Zend Guard Loader/Zend Optimizer sur Debian

Par Pierre-Yves Landuré Dernière modification 02/03/2018 20:35

Zend Optimizer accélére l'exécution du code PHP et permet l'utilisation des fichiers protégés par une licence à l'aide de Zend Guard. Ce guide vous aide à installer cette extension PHP sur Debian.

Ce guide est testé sur:

  • Debian 7.0 Wheezy

Ce guide est testé avec ces versions de ZendGuardLoader:

  • 6.0.0

Prérequis

Ce guide nécessite:

Paramètres

Renseignez l'URL de téléchargement de l'extension (disponible via la page de téléchargement de Zend Guard Loader) (optionnel, recommandé):

# DOWNLOAD_URL="http://downloads.zend.com/guard/6.0.0/ZendGuardLoader-70429-PHP-5.4-linux-glibc23-x86_64.tar.gz"

Renseignez la version de ZendGuardLoader à installer:

VERSION="6.0.0"

Renseignez le numéro de build de ZendGuardLoader (doit correspondre à la version):

BUILD="70429"

Installation

Détectez l'architecture du système:

ARCH="$(command dpkg --print-architecture)"
test "${ARCH}" = 'amd64' && ARCH='x86_64'

Détectez la version de PHP:

PHP_VERSION="$(command php --version 2>'/dev/null' \
    | command head -n 1 \
    | command cut --characters=5-7)"

Détectez l'emplacement d'installation des extensions PHP:

INSTALL_PATH="$(command find '/usr/lib/php5' -type d -regex '.*/[0-9]*')"
test -z "${INSTALL_PATH}" && INSTALL_PATH='/usr/lib/php5/20100525'

Détectez le chemin des fichiers de configuration des extensions PHP:

MODS_CONF_PATH='/etc/php5/conf.d'
test -d '/etc/php5/mods-available' \
  && MODS_CONF_PATH='/etc/php5/mods-available'

Déterminez l'URL de téléchargement de ZendGuardLoader, si nécessaire:

if [ -z "${DOWNLOAD_URL}" ]; then
  DOWNLOAD_URL="http://downloads.zend.com/guard/${VERSION}/ZendGuardLoader-${BUILD}-PHP-${PHP_VERSION}-linux-glibc23-${ARCH}.tar.gz"
fi

Si PHP est en version 5.3, forcez l'URL de téléchargement:

test "${PHP_VERSION}" = '5.3' \
    && DOWNLOAD_URL="http://downloads.zend.com/guard/5.5.0/ZendGuardLoader-php-5.3-linux-glibc23-${ARCH}.tar.gz"

Obtenez le nom de fichier à partir de l'URL:

FILENAME="$(command echo "${DOWNLOAD_URL}" | command sed -e 's|^.*/\([^/]*\)|\1|')"

Mise en place du logiciel

Téléchargez le logiciel:

command wget "${DOWNLOAD_URL}" \
    --output-document="/tmp/${FILENAME}"

Décompressez l'archive téléchargée:

command tar --directory '/tmp' -xzf "/tmp/${FILENAME}"

Détectez l'emplacement du fichier d'extension:

EXTENSION_FILE="$(command find "/tmp/${FILENAME/%.tar.gz/}" -type f -name 'ZendGuardLoader.so')"

Placez l'extension dans le dossier adéquat de votre installation PHP:

if [ -e "${EXTENSION_FILE}" ]; then
command mkdir -p "${INSTALL_PATH}" command cp "${EXTENSION_FILE}" "${INSTALL_PATH}"
else
echo "Error: ZendGuardLoader.so extension file not found."
fi

Ajoutez l'extension à votre configuration PHP:

if [ -e "${INSTALL_PATH}/ZendGuardLoader.so" ]; then
echo "; configuration for php ZendGuardLoader module
; priority=05
zend_extension=${INSTALL_PATH}/ZendGuardLoader.so" > "${MODS_CONF_PATH}/zendguardloader.ini"
test -n "$(command -v php5enmod)" && command php5enmod 'zendguardloader/05'
fi

Redémarrez votre serveur Web:

test -e '/etc/init.d/php5-fpm' && command service 'php5-fpm' 'restart'
test -e '/etc/init.d/apache2' && command service 'apache2' 'force-reload'

Remerciements