Instalación de PHP en Servidor Linux paso a paso

Clase 21 de 26Curso de Digital Ocean

Resumen

¿Cómo instalar PHP en tu servidor?

La instalación de PHP en un servidor es un paso crucial para ejecutar proyectos dinámicos basados en este lenguaje. Ya sea para desarrollar aplicaciones web, sistemas de gestión de contenido, o cualquier solución que requiera manejo de datos del lado del servidor, PHP juega un papel vital. Aquí te mostramos una guía detallada para llevar a cabo este proceso de instalación en un entorno de servidor.

¿Qué es PHP y por qué es importante?

PHP, acrónimo de "PHP: Hypertext Preprocessor", es un lenguaje de programación del lado del servidor ampliamente utilizado para el desarrollo de aplicaciones web. Su importancia radica en su capacidad para generar contenido dinámico, interoperar con bases de datos y su compatibilidad con múltiples servidores y plataformas.

¿Cómo comenzar con la instalación?

  1. Conexión al servidor:

    • Abre la consola de tu sistema y conéctate al servidor donde deseas instalar PHP.
  2. Agregar el repositorio necesarios:

    • Antes de instalar PHP, necesitas agregar el repositorio yUnivers que contiene los paquetes necesarios para la versión que deseas instalar.
    sudo add-apt-repository ppa:ondrej/php
    
  3. Instalación de PHP:

    • Ejecuta el siguiente comando en la consola para instalar PHP junto con sus módulos esenciales:
    sudo apt-get update
    sudo apt-get install php7.2 php7.2-fpm php7.2-mysql
    

¿Cómo configurar PHP una vez instalado?

Después de instalar PHP, es importante ajustar ciertas configuraciones para asegurar su correcto funcionamiento:

  1. Verificación de la instalación:

    • Asegúrate que PHP se esté ejecutando correctamente en la versión deseada:
    php -v
    
  2. Modificar configuraciones en php.ini:

    • Edita el archivo de configuración php.ini para ajustar parámetros como memory_limit y max_execution_time, que son esenciales para la ejecución eficiente de scripts PHP.
    sudo nano /etc/php/7.2/fpm/php.ini
    
    • Ajustes sugeridos:
      • memory_limit de 128M a 256M (o más, dependiendo de tu servidor).
      • max_execution_time a 1800 segundos, especialmente útil para operaciones que requieren más tiempo de procesamiento.
  3. Reiniciar el servicio PHP:

    • Aplica los cambios reiniciando el proceso PHP:
    sudo systemctl restart php7.2-fpm
    

¿Cómo integrar PHP con Nginx?

Para que Nginx pueda procesar archivos PHP, hay que realizar ciertas configuraciones:

  1. Edición de la configuración de Nginx:

    • Localiza y edita el archivo de configuración por defecto de Nginx:
    sudo nano /etc/nginx/sites-available/default
    
    • Asegúrate de incluir y configurar adecuadamente:

      location ~ \.php$ {
          include snippets/fastcgi-php.conf;
          fastcgi_pass unix:/run/php/php7.2-fpm.sock;
      }
      
  2. Verificación de la configuración de Nginx:

    • Comprueba que no haya errores en la configuración con:
    sudo nginx -t
    
  3. Reinicio del servicio Nginx:

    • Aplica los cambios recargando la configuración:
    sudo systemctl reload nginx
    

¿Cómo comprobar que PHP funciona correctamente?

La forma más segura de verificar si PHP está correctamente instalado y configurado es creando un archivo de prueba:

  1. Crear un archivo para prueba:

    • Navega al directorio raíz de tu servidor web y crea un archivo llamado prueba.php:
    sudo nano /var/www/html/prueba.php
    
    • Escribe el siguiente contenido en el archivo:
    <?php phpinfo(); ?>
    
  2. Acceso desde el navegador:

    • Abre tu navegador e ingresa la URL que apunta al archivo de prueba, por ejemplo:
    http://tu-servidor-ip/prueba.php
    
    • Si todo está correcto, deberías ver una página con la información detallada de configuración de PHP.

Con estos pasos, has instalado y configurado PHP en tu servidor, listo para ejecutar aplicaciones web de manera eficiente. Continúa explorando y ajustando configuraciones a medida que avanzas en tus proyectos, y nunca dejes de aprender para mantener tu entorno de desarrollo actualizado y funcional.