Como instalar Apache y PHP 7.4 en Debian 10 (Buster)

Carlos López
3 min readFeb 6, 2021
Debian 10 + Apache + PHP 7.4

Me toco actualizar uno de los servidores, de PHP 7 a 7.4. Encontramos algunas dificultades y se resolvieron de la siguiente manera.

Instalando Apache web server:

En nuestro servidor (ya sea local o VM en GCP o AWS) debemos autenticar en consola (vía SSH), e iniciamos la instalación.

Para instalar Apache web server, utiliza los siguientes comandos:

$ sudo apt-get -y install apache2

Para instalar php y sus extensiones, utiliza los siguientes comandos. Para este ejercicio instalaremos php 7.4.

$ sudo apt-get -y install apache2

Instalando PHP 7.4:

Primero actualizamos el sistema:

$ sudo apt update$ sudo apt upgrade -y && sudo reboot

Instalando wget en Debian 10

Aquí fue el primer tropiezo, Debian 10 no cuenta con wget, así que hay que instalarlo manualmente antes de proceder con PHP 7.4

$ sudo apt-get install wget

Ahora bajamos y almacenamos el repositorio PPA en un archivo en el servidor Debian, pero antes bajamos la llave GPG:

$ sudo apt -y install lsb-release apt-transport-https ca-certificates $ sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg

Agregamos el repositorio:

$ echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | sudo tee /etc/apt/sources.list.d/php.list

Nuevamente actualizamos

$ sudo apt update

Procedemos a instalar

$ sudo apt -y install php7.4

Ahora instalamos los paquetes adicionales

$ sudo apt-get install php7.4-{bcmath,bz2,intl,gd,mbstring,mysql,zip,mysqli,PDO}

O también podemos usar (dependiendo de lo que su desarrollo necesite):

$ sudo apt install php7.4-{common,mysql,xml,xmlrpc,curl,gd,imagick,cli,dev,imap,mbstring,opcache,soap,zip,intl,bcmath,mysqli,PDO} -y

# NOTA: Si adicionalmente necesitas instalar CURL, lo puedes hacer con:

$ sudo apt-get install php7.4-curl
$ sudo service apache2 restart

Recordemos que la configuración de PHP relacionada a Apache se almacena en: /etc/php/7.4/apache2/php.ini

Verificamos

$ sudo apache2 -v$ php -v

Creamos el archivo “locale” manualmente con el siguiente comando:

$ sudo localedef -i en_US -f UTF-8 en_US.UTF-8

Ahora debemos habilitar Apache rewrite y headers module.

$ sudo a2enmod rewrite
$ sudo a2enmod headers
$ sudo service apache2 restart

Ahora Apache webserver y php se han instalado en tu servidor.

Instalando cliente mysql

Para instalar un cliente-mysql, tenemos que saber Debian 10 Buster, a dejado de soportar mysql-client, sin embargo podemos usar el cliente de MariaDB que es un “fork” de MySQL. Este cliente puede ser iniciado con el comando mysql y la documentación puede revisarse acá. Este cliente debe trabajar sin problemas con MySQL Server 5.7.

$ sudo apt-get install default-mysql-client

SI gustan revisar, el link al paquete en debian esta acá.

Configurando PHP 7.4

Ahora cambiaremos algunos valores en el archivo php.ini

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

Buscamos los siguientes parámetros y cambiamos los valores:

upload_max_filesize = 32M 
post_max_size = 48M
memory_limit = 256M
max_execution_time = 600
max_input_vars = 3000
max_input_time = 1000

Una vez modificados los valores, es necesario reiniciar Apache para que los mismos surtan efecto.

$ sudo a2enmod rewrite$ sudo a2enmod headers$ sudo service apache2 restart

Listo!!!

Nuevamente gracias por leerme!!! Me gustaría escuchar tus comentarios y sugerencias para nutrir este post.

Si te gusto y te es útil compártelo! y dale un 👏 (en los iconos de la izquierda) para que más personas que están en este camino aprovechen el artículo. Comparte el conocimiento en tus redes sociales!

--

--