Habilitar las extensiones y los loaders de PHP

 

Generalidades

Este artículo explica cómo agregar y compilar extensiones y cargadores PHP en su sitio web.

Antecedentes

Extensiones

Las extensiones PHP son bibliotecas de código prediseñado. Te permiten utilizar específicos funciones ya creadas para simplificar tu código. Revisa esta página para obtener una lista de extensiones PHP. 

Loaders

Los loaders de PHP agregan tipos especiales de archivos PHP que han sido codificados con una codificación producto como ionCube loader.

Revisar si una extensión está activa

Antes de agregar una extensión, asegúrate de que no esté activada de forma predeterminada. Puedes ver cualquier extensión activa si agregas un archivo phpinfo.php a tu sitio.

Si una extensión está activa, verás su bloque correspondiente al visitar el archivo phpinfo.php. Por ejemplo, si buscas la palabra Phar, verás Phar: PHP Archive support y enabled.

Habilitar una extensión

Los siguientes pasos solo se aplican a las extensiones que ya están instaladas con la versión de PHP actualmente en el servidor, pero no están habilitados actualmente. La sección de abajo debe usarse en su lugar si la extensión NO está instalada en el servidor.

Los siguientes pasos agregan código a tu usuario phprc para habilitar una extensión.

 

Crear un archivo phprc

Revisa los siguientes artículos para obtener instrucciones sobre cómo crear un archivo phprc:

Si el archivo ya existe, solo necesitas actualizarlo usando un cliente FTP o SSH:

Cargar la extensión

Agrega una línea a tu archivo phprc para cargar una extensión usando esta sintaxis:

extension = extension_name.so

Eliminar todos los procesos de PHP en ejecución

Asegúrate de eliminar los procesos php en ejecución para garantizar que la nueva configuración surta efecto.

Confirmar los cambios

Después de editar el archivo y cerrar todos los procesos PHP, verifica que la extensión esté habilitada creando un archivo phpinfo.php. Cuando veas este archivo en un navegador, deberías ver la extensión en la lista.

Si no ves que tus cambios se han actualizado, intenta eliminar todos los procesos de PHP nuevamente.

Compilar extensiones de PHP

Estos pasos solo son necesarios si NO hay una extensión ya instalada en el servidor. Revisa la sección de arriba para asegurarte de cuáles están instalados utilizando un archivo phpinfo.php.

Aunque DreamHost incluye las extensiones PHP más comunes necesarias en tu sitio, es posible que necesites configurar y compilar extensiones de PHP adicionales.

Por favor ten cuidado con la cantidad y los tipos de extensiones que agregas, ya que pueden afectar significativamente el rendimiento del sitio.

En las siguientes instrucciones, asegúrate de reemplazar myphpextension con el nombre real de la extensión que estás instalando.

 

Descargar la extensión de PHP

Descarga la extensión PHP que deseas utilizar en el directorio de inicio de tu usuario en el servidor de DreamHost. Debería ser un archivo .tar.gz, que puedes encontrar en uno de los siguientes sitios:

Luego, corre el siguiente comando para descargarlo en el directorio de inicio de tu usuario:

[server]$ wget myphpextension.tgz

Dirigirse al directorio de inicio

Asegúrate de estar en el directorio de inicio de tu usuario corriendo lo siguiente:

[server]$ cd ~

Extraer el archivo

Utiliza el siguiente comando para extraer el archivo:

[server]$ tar -xvzf myphpextension.tgz

Luego, dirígete al directorio donde se extrajo el archivo:

[server]$ cd myphpextension/

Correr la versión phpize

phpize es una herramienta de línea de comandos que viene con PHP y se utiliza cuando deseas compilar e instalar extensiones PHP personalizadas a partir del código fuente.

Ejecuta la versión de phpize que coincida con la versión de PHP que utiliza tu sitio. Por ejemplo, si tu sitio usa PHP 8.4, corre el siguiente comando:

[server]$ phpize-8.4

Especificar la ruta

Las instrucciones que vienen con tu extensión de PHP deben incluir un comando para configurarla. Puede verse así:

[server]$ ./configure --enable-myphpextension --with-php-config=/usr/local/php84/bin/php-config

Compilar tu extensión

Compila tu extensión usando el comando realizar instalación:

[server]$ make

Verifica el resultado para ver dónde están instaladas las bibliotecas. Deberías ver algo como esto:

Libraries have been installed in:
   /home/username/myphpextension/modules

Si sigues la documentación incluida con tu extensión PHP, no necesitas correr make install, ya que no está modificando la configuración PHP del servidor directamente. En su lugar, realiza un cambio local en la configuración de PHP en tu cuenta de usuario.

Incluir la ruta al archivo .so

Si compilaste tu propia extensión de PHP, asegúrate de incluir la ruta completa al archivo .so

zend_extension=/home/username/.php/extensions/myphpextension.so

Organiza tus extensiones y copia tu archivo .so (opcional)

Para mantener organizadas tus extensiones de PHP personalizadas, créales un directorio en el directorio .php de tu usuario:

[server]$ mkdir -p $HOME/.php/extensions/

Un archivo .so es un tipo de archivo de biblioteca compilada que se utiliza principalmente en sistemas tipo Unix (como Linux), incluidos aquellos en los que PHP corre. Copia tu archivo .so al nuevo directorio que acabas de crear:

[server]$ cp modules/myphpextension.so $HOME/.php/extensions/

WebP

El soporte para formato de imagen WebP está disponible vía GD, el cual está activado por defecto en los servidores de DreamHost.

Ver también

¿Este artículo ha respondido sus preguntas?

¿Aún no encuentra lo que busca?