Cómo instalar PHP en Ubuntu 20.04 LTS

En este artículo veremos cómo instalar y configurar PHP en Ubuntu 20.04 LTS Focal Fossa, de modo que podremos trabajar con la versión 7.4 para desarrollo de aplicaciones web desde nuestro servidor o VPS Ubuntu.

Antes de instalar PHP en Ubuntu 20.04

Para poder completar esta guía de instalación de PHP en Ubuntu 20.04 LTS deberías cumplir los siguientes requisitos mínimos:

  • Una máquina Ubuntu 20.04 Focal Fossa actualizada.
  • Un servicio web (Apache o Nginx).
  • Acceso a consola con un usuario con permisos de sudo.
  • Conexión a Internet.

Si aún no dipones de servicio web, puedes consultar previamente nuestra guía de instalación de Apache en Ubuntu 20.04.

Cómo instalar PHP en Ubuntu 20.04

Vamos a instalar PHP en Ubuntu 20.04 LTS desde los repositorios de la distribución, por lo que previamente actualizaremos las listas de paquetes:

~$ sudo apt update

PHP para Apache

Si usas Apache como servicio web, el paquete que necesitas será libapache2-mod-php:

~$ sudo apt install -y php

PHP para Ngnix

Si usas Nginx, el paquete que necesitas es php-fpm:

~$ sudo apt install -y php-fpm

En este caso se instala PHP como servicio independiente, el servicio php7.4-fpm.service o php7.4-fpm, que queda iniciado y habilitado para su arranque automático junto a Ubuntu 20.04.

Será necesario configurar Nginx para conectar con el servicio PHP-FPM, editando su archivo de configuración:

~$ sudo nano /etc/nginx/sites-available/default

Buscamos esta sección:

...
        # pass PHP scripts to FastCGI server
        #
        #location ~ \.php$ {
        #       include snippets/fastcgi-php.conf;
        #
        #       # With php-fpm (or other unix sockets):
        #       fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
        #       # With php-cgi (or other tcp sockets):
        #       fastcgi_pass 127.0.0.1:9000;
        #}
...

Activamos el bloque location con la configuración adecuada, en este caso correspondiente al servicio PHP-FPM:

...
        # pass PHP scripts to FastCGI server
        #
        location ~ \.php$ {
                include snippets/fastcgi-php.conf;
        #
        #       # With php-fpm (or other unix sockets):
                fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
        #       # With php-cgi (or other tcp sockets):
        #       fastcgi_pass 127.0.0.1:9000;
        }
...

Y recargamos la configuración de Nginx:

~$ sudo systemctl reload nginx

Otras dependencias

También se incluye PHP para consola, o PHP CLI, con el que podrás comprobar en cualquier momento la versión de PHP instalada en Ubuntu 20.04, usando el comando php -v:

como instalar php en ubuntu 20.04 lts focal fossa

Cómo probar PHP en Ubuntu 20.04

Para probar PHP en Ubuntu 20.04 crearemos un pequeño archivo fácilmente accesible vía web:

~$ sudo nano /var/www/html/info.php

El contenido será únicamente la siguiente línea:

<?php phpinfo();

Desde un navegador accederemos utilizando la dirección IP o dominio del servidor Ubuntu 20.04, añadiendo la ruta /info.php.

instalar y configurar php en ubuntu 20.04 lts focal fossa

Podremos examinar gran cantidad de información sobre la configuración de PHP en Ubuntu 20.04.

Cómo configurar PHP en Ubuntu 20.04

Para configurar PHP en Ubuntu 20.04 trabajaremos sobre el archivo php.ini.

Si usamos Apache, editaremos el siguiente archivo:

~$ sudo nano /etc/php/7.4/apache2/php.ini

Y si usamos Nginx o cualquier otro servicio web que utilice el servicio PHP, editaremos este otro archivo:

~$ sudo nano /etc/php/7.4/fpm/php.ini

Uno de los primeros ajustes que querremos hacer será establecer la zona horaria del servidor, a través de la directiva date.timezone:

...
;date.timezone =
...

Está desactivada por defecto, por lo que la activaremos eliminando el carácter ; al inicio de línea y le daremos el valor adecuado:

...
date.timezone = Europe/Madrid
...

Si no conoces el valor adecuado para tu zona horaria, puedes consultarlo en la documentación de PHP.

Tratamiento de errores

La configuración por defecto del archivo php.ini corresponde a un entorno de producción, por lo que no se mostrarán errores en las páginas web realizadas con PHP. Sin embargo, si estamos configurando un entorno de desarrollo querremos obtener información visible sobre todos los errores que sucedan, para ayudar a su depuración. Para ello, buscaremos las siguientes directivas:

...
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
...
display_errors = Off
...
display_startup_errors = Off
...

Y los cambiaremos por los siguientes valores:

...
error_reporting = E_ALL
...
display_errors = On
...
display_startup_errors = On
...

Aplicar los cambios

Cada vez que hagamos cambios en el archivo php.ini, debemos recargar la configuración del servicio.

En el caso de Apache:

~$ sudo systemctl reload apache2

Y en el caso de Nginx y el resto de servidores que usan PHP-FPM:

~$ sudo systemctl reload php7.4-fpm

Configuración de PHP para consola (CLI)

La configuración de PHP para consola o CLI en Ubuntu 20.04 se encuentra diferenciada en otro archivo php.ini, ubicado en /etc/php/7.4/cli/php.ini. Esta configuración es independiente, así que habrá que realizar cambios similares, como la configuración de zona horaria, etc.

En el caso de PHP de consola basta guardar los cambios para que estén disponibles.

Conclusión

Ahora que sabes cómo instalar PHP en Ubuntu 20.04 LTS Focal Fossa ya puedes desarrollar o instalar aplicaciones web desarrolladas en este lenguaje, utilizando por fin PHP 7.4 incluido en los repositorios de la distribución.

Si tienes alguna duda o pregunta, sugerencias de mejoras del tutorial o notificaciones de errores, puedes dejar un comentario.

¡Apoya comoinstalar.me!

¿Ya dispones de este lenguaje gracias a esta guía de instalación y configuración de PHP en Ubuntu 20.04 Focal Fossa? En caso afirmativo tal vez quieras mostrar tu agradecimiento con una mínima aportación para el mantenimiento de este sitio y creación de más tutoriales de Ubuntu 20.04 y PHP. ¡Gracias!

 

Valora esta entrada

1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (3 votos, promedio: 5,00 de 5)
Cargando…

Deja un comentario

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies.

ACEPTAR
Aviso de cookies