GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo instalar PHP en CentOS 8

PHP es uno de los lenguajes de programación del lado del servidor más utilizados. Muchos CMS y frameworks populares, como WordPress, Magento y Laravel, están integrados en PHP.

En esta guía, analizaremos cómo instalar PHP 7.2, 7.3 o 7.4 en CentOS 8. Antes de elegir qué versión de PHP instalar, asegúrese de que sus aplicaciones la admitan.

También le mostraremos cómo integrar PHP con Nginx y Apache.

Instalando PHP en CentOS 8 #

CentOS 8 se distribuye con PHP 7.2. Esta versión es compatible con la mayoría de las aplicaciones PHP modernas, pero ya no se mantendrá activamente a partir de noviembre de 2019. Las versiones más nuevas de PHP están disponibles en el repositorio de Remi.

Habilitar el repositorio Remi #

Si va a instalar la versión estable de PHP 7.2 de la distribución, omita este paso. De lo contrario, si desea instalar PHP 7.3 o 7.4, habilite el repositorio de Remi ejecutando el siguiente comando como root o usuario con privilegios sudo:

sudo dnf install dnf-utils http://rpms.remirepo.net/enterprise/remi-release-8.rpm

El comando anterior también habilitará el repositorio EPEL.

Una vez que se complete la instalación, ejecute el siguiente comando para obtener una lista de todas las versiones de PHP disponibles:

sudo dnf module list php

El resultado mostrará una lista de todos los módulos disponibles, incluidos los perfiles de flujo, versión e instalación asociados.

Last metadata expiration check: 0:02:11 ago on Fri 18 Oct 2019 08:31:43 PM UTC.
CentOS-8 - AppStream
Name    Stream       Profiles                     Summary                 
php     7.2 [d][e]   common [d], devel, minimal   PHP scripting language  

Remi's Modular repository for Enterprise Linux 8 - x86_64
Name    Stream       Profiles                     Summary                 
php     remi-7.2     common [d], devel, minimal   PHP scripting language  
php     remi-7.3     common [d], devel, minimal   PHP scripting language  
php     remi-7.4     common [d], devel, minimal   PHP scripting language  

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

El módulo PHP predeterminado está configurado en PHP 7.2. Para instalar una versión más reciente de PHP, habilite la versión adecuada:

PHP 7.3

sudo dnf module reset phpsudo dnf module enable php:remi-7.3

PHP 7.4

sudo dnf module reset phpsudo dnf module enable php:remi-7.4

Ahora está listo para instalar PHP en su servidor CentOS.

Instalar PHP #

El siguiente comando instalará PHP y algunos de los módulos PHP más comunes:

sudo dnf install php php-opcache php-gd php-curl php-mysqlnd

FPM se instala como dependencia y se utiliza como servidor FastCGI. Inicie el servicio FPM y habilítelo para que se inicie automáticamente al arrancar:

sudo systemctl enable --now php-fpm

Configurando PHP para trabajar con Apache #

Si SELinux se está ejecutando en su sistema, deberá actualizar el contexto de seguridad de SELinux:

sudo chcon -Rt httpd_sys_rw_content_t /var/www

Si está utilizando Apache como su servidor web, reinicie el httpd servicio usando el siguiente comando, y está listo para comenzar:

sudo systemctl restart httpd

Configurar PHP para trabajar con Nginx #

De forma predeterminada, PHP FPM se ejecuta como usuario apache . Para evitar problemas de permisos, cambiaremos el usuario a nginx . Para hacerlo, edite las líneas resaltadas en amarillo:

sudo nano /etc/php-fpm.d/www.conf
/etc/php-fpm.d/www.conf
...
user = nginx
...
group = nginx

Asegúrese de que /var/lib/php directorio tiene la propiedad correcta:

chown -R root:nginx /var/lib/php

Una vez hecho esto, reinicie el servicio PHP FPM:

sudo systemctl restart php-fpm

A continuación, edite la directiva de host virtual de Nginx y agregue el siguiente bloque de ubicación para que Nginx pueda procesar archivos PHP:

server {

    # . . . other code

    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_pass unix:/run/php-fpm/www.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

Para que la nueva configuración surta efecto, reinicie el servicio Nginx:

sudo systemctl restart nginx

Actualice el contexto de seguridad de SELinux:

sudo chcon -Rt httpd_sys_rw_content_t /var/www

Cent OS
  1. Cómo instalar PHP 5.5 en CentOS

  2. Cómo instalar PHP 5.6 en CentOS 7

  3. Cómo instalar PHP 7.3 en CentOS 8

  4. Cómo instalar PHP 7.4 en CentOS 7

  5. Cómo instalar PHP 7.2 en CentOS 7

Cómo instalar Craft CMS en CentOS 7

Cómo instalar Bolt CMS en CentOS 7

Cómo instalar Pagekit CMS en CentOS 7

Cómo instalar Grav CMS en CentOS 7

Cómo instalar ExpressionEngine CMS en CentOS 8

Cómo instalar PHP 7 en CentOS 7