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

Cómo instalar Apache y PHP (pila LAMP) en Rocky Linux/Centos 8

El servidor Apache HTTP (Apache) es uno de los software de servidor web multiplataforma gratuitos y de código abierto más populares, lanzado bajo los términos de la Licencia Apache 2.0. Apache es popular como parte de la configuración LAMP, siendo la A en el acrónimo. La funcionalidad del servidor apache se puede ampliar con los muchos módulos disponibles.

PHP es un lenguaje de secuencias de comandos de propósito general orientado al desarrollo web. Es uno de los lenguajes de programación populares para la web. Las herramientas populares como WordPress están codificadas usando php. Las grandes empresas como Facebook también usan mucho php.

Contenido relacionado
  • Cómo instalar y configurar PHP y Apache (pila LAMP) en OpenSUSE Leap 15.3
  • Cómo instalar y configurar PHP y Nginx (LEMP) en OpenSUSE Leap 15.3
  • Cómo instalar y configurar PHP y Apache (pila LAMP) en Ubuntu 20.04
  • Cómo instalar y configurar PHP y Nginx (LEMP) en Ubuntu 20.04
  • Cómo instalar y configurar PHP y Apache (pila LAMP) en Debian 11
  • Cómo instalar y configurar PHP y Nginx (LEMP) en Debian 11
  • Cómo instalar y configurar PHP y Nginx (LEMP) en Rocky Linux/Alma Linux 8

Requisitos

Para seguir esta guía, asegúrese de tener lo siguiente:

  • Un servidor Rocky Linux 8 actualizado
  • Acceso raíz o Usuario con acceso sudo que puede instalar paquetes y editar configuraciones
  • Acceso a Internet

Tabla de contenido

  1. Asegurarse de que el servidor esté actualizado
  2. Instalación de PHP en Rocky Linux 8
  3. Instalación de Apache en Rocky Linux 8
  4. Configuración de host virtual

1. Asegurarse de que el servidor esté actualizado

Antes de continuar, asegurémonos de que tenemos los últimos paquetes en nuestro sistema. Ejecute el siguiente comando para actualizar el sistema:

 $ sudo dnf -y update
Last metadata expiration check: 1:45:37 ago on Sun 29 Aug 2021 08:52:16 AM UTC.
Dependencies resolved.
Nothing to do.
Complete!

2. Instalación de PHP en Rocky Linux 8

Ahora que Apache está configurado, necesitaremos instalar PHP. Para que se sirvan los archivos php, es necesario configurar php en el sistema. En esta guía instalaremos php 7.4.

PHP 7.4 aún no está disponible en los repositorios predeterminados. El Repositorio Remi es el repositorio perfecto para instalar php7.4. Remi repo es un repositorio YUM gratuito y estable principalmente para la pila de PHP. Contiene paquetes para las últimas versiones de PHP.

Para habilitar Remi Repository en nuestro Servidor Centos:

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

Confirme que el repositorio remi se ha instalado y habilitado con este comando:

$ sudo dnf repolist
repo id                                 repo name
appstream                               CentOS Linux 8 - AppStream
baseos                                  CentOS Linux 8 - BaseOS
epel                                    Extra Packages for Enterprise Linux 8 - x86_64
epel-modular                            Extra Packages for Enterprise Linux Modular 8 - x86_64
extras                                  CentOS Linux 8 - Extras
remi-modular                            Remi's Modular repository for Enterprise Linux 8 - x86_64
remi-safe                               Safe Remi's RPM repository for Enterprise Linux 8 - x86_64

Deberías ver los repositorios remi como parte de la lista.

Ahora que se ha instalado el repositorio, busquemos php. Usa este comando:

$ sudo dnf module list php
Last metadata expiration check: 2:14:53 ago on Sun 29 Aug 2021 08:52:16 AM UTC.
CentOS Linux 8 - AppStream
Name                Stream                      Profiles                                 Summary
php                 7.2 [d]                     common [d], devel, minimal               PHP scripting language
php                 7.3                         common [d], devel, minimal               PHP scripting language
php                 7.4                         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
php                 remi-8.0                    common [d], devel, minimal               PHP scripting language

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

De la lista. podemos ver que el predeterminado es 7.2. Realizando una dnf install php instalará el 7.2 que no queremos. Habilitemos el 7.4 usando este comando:

sudo dnf module enable php:remi-7.4

Si por alguna razón falla, puede restablecer el módulo existente con este comando:

sudo dnf module reset php

Ahora que se ha habilitado el repositorio, instalemos php con este comando:

sudo dnf install -y php php-common php-cli

Una vez exitoso. confirme la versión instalada con este comando:

$ php -v
PHP 7.4.23 (cli) (built: Aug 24 2021 16:33:30) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.23, Copyright (c), by Zend Technologies

Ahora que Apache y php se han instalado correctamente, configurémoslo para atender algo de tráfico

3. Instalación de Apache en Rocky Linux 8

Ahora que hemos actualizado nuestros paquetes, instalemos Apache. Apache está disponible en los repositorios predeterminados como el paquete httpd . Puede consultar información al respecto con el siguiente comando:

$ sudo dnf info httpd
Last metadata expiration check: 1:48:56 ago on Sun 29 Aug 2021 08:52:16 AM UTC.
Installed Packages
Name         : httpd
Version      : 2.4.37
Release      : 39.module_el8.4.0+778+c970deab
Architecture : x86_64
Size         : 4.3 M
Source       : httpd-2.4.37-39.module_el8.4.0+778+c970deab.src.rpm
Repository   : @System
From repo    : appstream
Summary      : Apache HTTP Server
URL          : https://httpd.apache.org/
License      : ASL 2.0
Description  : The Apache HTTP Server is a powerful, efficient, and extensible
             : web server.

Vamos a instalarlo usando dnf:

sudo dnf install -y httpd

Inicio y activación del servicio

Por defecto el servicio no se inicia. Comencemos con este comando:

sudo systemctl start httpd

Para confirmar que funciona como se esperaba, use el comando de estado y asegúrese de que indica como active como se muestra a continuación:

$ sudo systemctl start httpd
$ sudo systemctl status httpd
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor preset: disabled)
  Drop-In: /usr/lib/systemd/system/httpd.service.d
           └─php-fpm.conf
   Active: active (running) since Sun 2021-08-29 10:43:52 UTC; 17s ago
     Docs: man:httpd.service(8)
 Main PID: 84446 (httpd)
   Status: "Running, listening on: port 80"
    Tasks: 213 (limit: 23800)
   Memory: 31.0M
   CGroup: /system.slice/httpd.service
           ├─84446 /usr/sbin/httpd -DFOREGROUND
           ├─84447 /usr/sbin/httpd -DFOREGROUND
           ├─84448 /usr/sbin/httpd -DFOREGROUND
           ├─84449 /usr/sbin/httpd -DFOREGROUND
           └─84450 /usr/sbin/httpd -DFOREGROUND

Aug 29 10:43:52 test-app-server systemd[1]: Starting The Apache HTTP Server...
Aug 29 10:43:52 test-app-server httpd[84446]: AH00558: httpd: Could not reliably determine the server's fully qualified doma>
Aug 29 10:43:52 test-app-server systemd[1]: Started The Apache HTTP Server.
Aug 29 10:43:52 test-app-server httpd[84446]: Server configured, listening on: port 80

Si tiene algún firewall habilitado, asegúrese de habilitar http y https tráfico para permitir el acceso a apache.

Para confirmar que php está instalado y funciona bien, visite la dirección IP del servidor en el navegador (http://server_ip). Si no conoce la IP del servidor, consígala usando este comando en su terminal:

curl -4 icanhazip.com

Si todo está bien, debería ver la página de Apache como se muestra a continuación:

4. Configuración de hosts virtuales

Con Apache, es posible alojar múltiples sitios en el mismo servidor donde se ejecuta Apache. Esto siempre se puede lograr utilizando varios dominios, cada uno de los cuales representa un sitio que aloja el servidor.

Los hosts virtuales Apache son similares a los bloques de servidores Nginx. Cada host virtual tendrá detalles de configuración para un solo host. Puede tener tantos servidores virtuales como desee.

En este ejemplo, usaremos el dominio site1.citizix.com para el host virtual, pero podrá usar el dominio que prefiera. Tenga en cuenta que el DNS del dominio que se utilizará ya debe estar configurado para apuntar a la dirección IP del servidor.
Confirme eso con:

dig -t A site1.citizix.com

Crear directorio y contenido de muestra

La página predeterminada de apache está configurada como un host virtual predeterminado que sirve contenido desde /var/www/html . Es una buena práctica crear el directorio de su sitio en /var/www directorio ya que es una mejor práctica servir desde allí.

Vamos a crear un directorio para nuestro sitio con el siguiente comando:

sudo mkdir /var/www/site1.citizix.com

Vamos a crear un index.php simple página para servir desde nuestro sitio. Necesitará vim instalado para que esto funcione, si no, use este comando:

sudo dnf install -y vim

Edite el archivo:

sudo vim /var/www/site1.citizix.com/index.php

Agregar contenido al archivo:

<?php phpinfo(); ?>

Finalmente, asegurémonos de que apache el usuario posee el directorio del sitio:

sudo chown -R apache.apache /var/www/site1.citizix.com

Creación de alojamiento virtual

Los archivos de host virtual de Apache especifican la configuración de cada sitio y le indican al servidor web Apache cómo responder a varias solicitudes de dominio.

Las configuraciones de Apache se almacenarán en el directorio /etc/httpd/conf.d/ . Vamos a crear una configuración para nuestro sitio:

sudo vim /etc/httpd/conf.d/site1.citizix.com.conf

Agrega el siguiente contenido:

<VirtualHost *:80>
    ServerName site1.citizix.com
    ServerAlias site1.citizix.com
    DocumentRoot /var/www/site1.citizix.com
    DirectoryIndex index.php
    ErrorLog /var/log/httpd/site1.citizix.com.error.log
    CustomLog /var/log/httpd/site1.citizix.com.requests.log combined
</VirtualHost>

Esto le dirá a Apache lo siguiente:

  • ServerName y ServerAlias – nombre del host a servir
  • DocumentRoot – dónde encontrar directamente la raíz que contiene los documentos web de acceso público
  • DirectoryIndex – El archivo que apache servirá cuando se acceda al sitio
  • ErrorLog – dónde almacenar los registros de errores para este sitio
  • CustomLog – dónde almacenar los registros de solicitudes para este sitio en particular

Guarde y cierre el archivo cuando haya terminado

Prueba del servidor virtual

Ahora que la configuración está en su lugar, debemos probar que todo funciona como se esperaba. Desde que creamos el index.php archivo de arriba, accedamos a él yendo a http://server_url/ . En mi caso, este es http://site1.citizix.com/ . Debería ver una página como la que se muestra a continuación:

Conclusión

En esta guía, logramos configurar Apache para servir tráfico en un servidor Rocky Linux 8.


Cent OS
  1. Cómo instalar y usar php Composer en Rocky Linux/Centos 8

  2. Cómo configurar Opencart en Rocky Linux/Centos 8 con Apache, PHP, Mysql (LAMP Stack)

  3. Cómo instalar y configurar PHP y Apache (pila LAMP) en Ubuntu 20.04

  4. Cómo instalar y configurar PHP y Apache (pila LAMP) en Debian 11

  5. Cómo instalar LAMP (Linux Apache MySQL y PHP) en CentOS 6 con phpMyAdmin y APC cache

Cómo instalar LAMP Stack en CentOS 8

Cómo instalar LAMP (Linux Apache, MariaDB, PHP) en CentOS 7

Cómo instalar LAMP Stack en CentOS 6

Cómo instalar LAMP Stack en Rocky Linux 8

Cómo instalar una pila LAMP (Apache, MariaDB, PHP) en CentOS 7

Cómo instalar LAMP en Ubuntu 15.10 (Linux, Apache, MySQL y PHP)