phpShield es un software privativo que sirve para codificar código PHP, es un producto de la empresa Inovica y se comercializa desde phpshield.com. Su función básica es proteger el código de tus programaciones de la vista de terceros ajenos. El problema que surge al instalar estas aplicaciones codificadas con phpshield, es que requiere de un software decodificador que haga el trabajo sucio para que el servidor web pueda interpretarlo correctamente.
Este software son los llamados «loaders», y están disponibles en versiones Linux, FreeBSD, Mac y Windows. Sabiendo todo esto, ya estamos en condiciones de ir a la práctica e instalar los loaders en nuestro sistema.
En el siguiente ejemplo lo instalaremos en un servidor CentOS Linux 5.x
1) Descarga del software desde http://www.phpshield.com/
2) Descomprimir el archivo
tar -xvpzf ixed4.lin.x86-64.zip
3) Copiar archivos correspondientes
Al descomprimir podremos observar que existen multitud de archivos. Cada uno corresponde a la versión de PHP que tenemos en el servidor, es decir, si en el servidor corres PHP 5.3.x, los loaders que necesito son los de la versión 5.3.x y no otros. Lo que haremos será copiar 2 ficheros de esa versión, hacia el extension_dir de PHP, que es donde se guardan los módulos:
Para 64 bits: /usr/lib64/php/modules/
Para 32 bits: /usr/lib/php/modules/
Si usas cPanel debes averiguar la ruta definida corriendo este comando:
grep extension_dir /usr/local/lib/php.ini
Una vez que conocemos el directorio de módulos de PHP, copiamos ambos archivos para allí, en este caso sería:
cp ixed.5.3* /usr/lib64/php/modules/ -f
Cargamos finalizar la instalación, cargamos la extensión desde php.ini agregando estas líneas al final del fichero:
extension="ixed.5.3.lin"
extension="ixed.5.3ts.lin"
El fichero php.ini se localiza en estos lugares:
/etc/php.ini es la ruta por defecto.
/usr/local/lib/php.ini es la ruta si usas cPanel.
Para tomar los cambios en php.ini, reiniciamos el servidor web:
/etc/init.d/httpd restart
Finalmente, comprobamos si PHP carga la extensión correctamente:
[[email protected]:~]php -i | grep shield -i
phpSHIELD Support => enabled