como instalar php en fedora 30

Cómo instalar PHP en Fedora 30

En esta entrada vamos a mostrar cómo instalar PHP en Fedora 30 paso a paso. Al final de esta guía serás capaz de configurar PHP en tu servidor o VPS Fedora para servir potentes aplicaciones web en este lenguaje imprescindible en Internet.

Antes de instalar PHP en Fedora 30

A fin de poder seguir esta guía de instalación y configuración de PHP en Fedora 30 necesitarás cumplir estos mínimos requisitos:

  • Un sistema Fedora 30 actualizado.
  • Un servidor web, en esta guía usamos Apache.
  • Acceso por línea de comandos como root o usuario con privilegios de sudo.
  • Conexión a Internet.

Si estás consultando esta guía es casi seguro que cumples los requisitos, así que sin más demora abrimos un terminal y nos ponemos a trabajar.

Cómo instalar PHP en Fedora 30

Para instalar PHP en Fedora 30 usaremos la versión existente en los propios repositorios de la distribución. Por ello, antes de empezar es conveniente actualizar la información del repositorio e incluso los paquetes instalados en el sistema:

~$ sudo yum -y update

Es el momento de instalar PHP, para lo cual usaremos el paquete principal php que se acopla perfectamente al servidor web Apache. El modo de funcionamiento, sin embargo, no será como módulo, sino a través de FastCGI por sockets Unix, por lo que se descarga automáticamente también el paquete php-fpm.

~$ sudo yum -y install php

Una vez descargado el paquete y sus dependencias será necesario reiniciar el servidor web para que conecte con el servicio PHP FastCGI:

~$ sudo systemctl restart httpd

Comprobando el funcionamiento de PHP en Fedora 30

Vamos a crear un sencillo script en PHP para comprobar el funcionamiento e integración del lenguaje con el servidor web, localizado en una ruta de acceso fácil:

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

El contenido es el siguiente:

<?php
        phpinfo();

Ya estamos listos para acceder mediante navegador a este script. Basta crear una URL con la dirección IP, nombre de máquina o dominio y añadir el sufijo /info.php. En el ejemplo de esta guía accederé mediante la URL http://fedora30.local/info.php:

como instalar php en fedora 30

Además de comprobar que PHP funciona, este minúsculo script nos ofrece una enorme cantidad de información sobre la versión de PHP instalada y su configuración en nuestro sistema Fedora 30.

Algo a destacar es la moderna versión de PHP que acabamos de instalar, la reciente 7.3.6. Nuestras aplicaciones web disfrutarán de las nuevas mejoras del lenguaje.

Cómo funciona PHP en Fedora 30

Algo que hay que tener muy en cuenta es que la instalación por defecto de PHP en Fedora 30 es como servicio FastCGI, no como módulo del servidor web.

Esto quiere decir que PHP es un servicio independiente y como tal lo podremos iniciar, detener, recargar y reiniciar a través del comando systemctl.

Es fundamental conocer este detalle, ya que los cambios de configuración de PHP entrarán en funcionamiento recargando el servicio php-fpm en lugar de recargando el servicio del servidor web.

Cómo configurar PHP en Fedora 30

Aunque como hemos visto hasta ahora funciona bastante bien, podemos configurar PHP en Fedora 30 en algunos aspectos básicos que no deberíamos dejar de lado.

El archivo principal de configuración es /etc/php.ini (una de las múltiples informaciones que nos suministra el script anterior). Es el archivo que debemos editar para hacer los cambios que veremos a continuación.

Después de guardar los cambios de configuración, estos entrarán en funcionamiento recargando la configuración del servicio php-fpm:

~$ sudo systemctl reload php-fpm

Zona horaria

La zona horaria no se configura por defecto, así que debemos editar php.ini y localizar la directiva date.timezone:

...
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
;date.timezone =
...

Vemos que está desactivada por un comentario (en este archivo de configuración los comentarios empiezan con el símbolo ;). Descomentaremos la directiva y le asignaremos un valor, según las posibilidades que podemos encontrar en la página web que señalan los propios comentarios.

En mi caso la zona horaria es España peninsular, por lo que efectúo el ajuste:

...
[Date]
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Europe/Madrid
...

Tratamiento de errores

Es importante ajustar la forma en la que PHP maneja los errores. Una aplicación web con algún fallo en entornos de producción debe ocultar los mensajes de error a los usuarios, pues podría mostrar información sensible; sin embargo, en entornos de desarrollo es justo al revés, PHP debe mostrar los mensajes de error siempre que sea posible.

Por defecto PHP para Fedora 30 viene configurado con valores de producción, es decir, no muestra mensajes de error. Puedes comprobarlo modificando el pequeño script de prueba e introduciendo un error, por ejemplo, insertando un carácter en el nombre de la función phpinfo():

<?php
        php_info();

Si guardamos los campos y volvemos a acceder con el navegador ocurrirá esto:

La página falla y es el propio navegador el que indica la existencia de un problema, pero sin más información.

Ahora vamos a editar php.ini y cambiar el tratamiento de mensajes de error aplicando valores de desarrollo. Las directivas error_reporting, display_errors y display_startup_errors tienen estos valores por defecto:

...
; Development Value: E_ALL
; Production Value: E_ALL & ~E_DEPRECATED & ~E_STRICT
; http://php.net/error-reporting
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT
...
; Development Value: On
; Production Value: Off
; http://php.net/display-errors
display_errors = Off
...
; Development Value: On
; Production Value: Off
; http://php.net/display-startup-errors
display_startup_errors = Off
...

Observa que los propios comentarios indican cuáles son los valores de producción y los valores de desarrollo, por lo que fácilmente podrás cambiar unos por otros. Ajustamos los valores a desarrollo:

...
; Development Value: E_ALL
; Production Value: E_ALL & ~E_DEPRECATED & ~E_STRICT
; http://php.net/error-reporting
error_reporting = E_ALL
...
; Development Value: On
; Production Value: Off
; http://php.net/display-errors
display_errors = On
...
; Development Value: On
; Production Value: Off
; http://php.net/display-startup-errors
display_startup_errors = On
...

Tras recargar la configuración de PHP recargamos la página errónea en el navegador para ver cómo se comporta ahora:

configurar php en fedora 30

Mucho más interesante, ya que PHP nos advierte de un error indicando el motivo y su localización (no siempre será tan fácil).

Cualquier otra configuración de PHP en Fedora 30 se basa en el mismo modo de operación:

  • Editar php.ini.
  • Localizar o añadir la directiva que necesitemos.
  • Ajustar su valor.
  • Recargar el servicio de PHP (php-fpm).

Conclusión

Ahora que ya sabes cómo instalar y configurar PHP en Fedora 30 y cómo configurar los aspectos principales del servicio estás en condiciones de servir increíbles sitios y aplicaciones web. Esto es aplicable tanto a tus desarrollos propios como a través de frameworks y sistemas CMS que se basan en PHP.

Si te ha surgido alguna duda o pregunta, tienes alguna sugerencia o quieres notificar algún error, puedes dejarme un mensaje.

¡Apoya este sitio!

¿Te has ahorrado un dolor de cabeza configurando PHP en Fedora 30? ¿Pensabas que el sistema FastCGI iba a ser más complicado que el de módulos del servidor web? Quizás te hayas alegrado tanto con esta guía que desees expresar tu agradecimiento con una donación mínima para mantener este sitio y fomentar nuevas guías… ¡Gracias!

Valora este sitio

1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (1 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