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 en el panel
Puedes ver qué extensiones PHP están disponibles en tu dominio y cuáles están habilitadas de forma predeterminada directamente en el panel de DreamHost.
- Navega a la página Administrar Sitios Web.
-
Da clic en el botón Administrar para abrir las Configuraciones del Sitio Web, las cuales te permiten modificar varios ajustes de tu sitio.
- Si estás en la Vista de Malla, da clic en el botón Administrar en la parte inferior de la caja del sitio.
- Si estás en la Vista de Lista, da clic en el botón Administrar a la derecha de tu dominio.
- Da clic en la pestaña Configuraciones.
- Junto a PHP, da clic en Administrar.
-
En la sección Configuraciones de PHP, da clic en Modificar a la derecha de Extensiones.
Aparecen las siguientes secciones:
Extensiones Opcionales
Estas extensiones son opcionales y se pueden habilitar o deshabilitar usando los botones.
- gmp — Proporciona soporte para aritmética de precisión arbitraria utilizando la biblioteca GNU Multiple Precision (GMP).
- tidy — Limpia y repara el marcado HTML y XML y se puede utilizar para formatear la salida.
Extensiones habilitadas automáticamente
Esta sección muestra las extensiones PHP que se habilitan automáticamente y no se pueden modificar, ya que se incluyen para garantizar la compatibilidad con aplicaciones PHP comunes (como WordPress) y características de la plataforma. Las extensiones mostradas dependen de la versión de PHP seleccionada actualmente en tu dominio.
También puedes ver las extensiones activas agregando 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.
- Da clic en Guardar Cambios cuando termines.
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.soEliminar 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.