Como instalar Apache y PHP 7.4 en Debian 10 (Buster)
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!