GNU/Linux >> Tutoriales Linux >  >> Ubuntu

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

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 la pila Apache PHP 7.4 (LAMP) en Rocky Linux/Centos 8
  • Cómo instalar y configurar PHP y Nginx (LEMP) en OpenSUSE Leap 15.3
  • 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 Ubuntu 20.04 actualizado
  • Acceso root al servidor o Usuario con acceso sudo
  • Acceso a Internet

Tabla de contenido

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

1. Asegurarse de que el servidor esté actualizado

Antes de continuar, siempre es una buena práctica asegurarse de que el servidor esté actualizado. Usa estos comandos para lograr esto

sudo apt update
sudo apt upgrade -y

2. Instalación de PHP en Ubuntu 20.04

PHP está disponible en los repositorios predeterminados de Ubuntu 20.04. La última versión de PHP al escribir este blog es PHP 7.4.

Instale PHP y algunos paquetes comunes usando este comando:

sudo apt install -y \
    php \
    php-common \
    php-cli

Compruebe la versión instalada de PHP

$ apt-cache policy php
php:
  Installed: 2:7.4+75
  Candidate: 2:7.4+75
  Version table:
 *** 2:7.4+75 500
        500 http://us-west-2.ec2.archive.ubuntu.com/ubuntu focal/main amd64 Packages
        100 /var/lib/dpkg/status

Verifique la versión de php instalada usando este comando:

$ php -v
PHP 7.4.3 (cli) (built: Nov 25 2021 23:16:22) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.3, Copyright (c), by Zend Technologies

3. Instalación de apache en Ubuntu 20.04

Los paquetes de Apache están disponibles en los repositorios predeterminados de Ubuntu 20.04 como apache2 . Instálalo usando este comando:

sudo apt install -y apache2

Confirme los paquetes instalados usando este comando:

$ apt-cache policy apache2
apache2:
  Installed: 2.4.41-4ubuntu3.8
  Candidate: 2.4.41-4ubuntu3.8
  Version table:
 *** 2.4.41-4ubuntu3.8 500
        500 http://us-west-2.ec2.archive.ubuntu.com/ubuntu focal-updates/main amd64 Packages
        100 /var/lib/dpkg/status
     2.4.41-4ubuntu3.6 500
        500 http://security.ubuntu.com/ubuntu focal-security/main amd64 Packages
     2.4.41-4ubuntu3 500
        500 http://us-west-2.ec2.archive.ubuntu.com/ubuntu focal/main amd64 Packages

El servicio se iniciará de forma predeterminada. Verifique el estado usando este comando:

$ sudo systemctl status apache2
● apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Thu 2021-12-16 18:36:59 UTC; 1min 8s ago
       Docs: https://httpd.apache.org/docs/2.4/
   Main PID: 33818 (apache2)
      Tasks: 6 (limit: 4631)
     Memory: 10.3M
     CGroup: /system.slice/apache2.service
             ├─33818 /usr/sbin/apache2 -k start
             ├─33821 /usr/sbin/apache2 -k start
             ├─33822 /usr/sbin/apache2 -k start
             ├─33823 /usr/sbin/apache2 -k start
             ├─33824 /usr/sbin/apache2 -k start
             └─33825 /usr/sbin/apache2 -k start

Dec 16 18:36:59 ip-10-2-40-129 systemd[1]: Starting The Apache HTTP Server...
Dec 16 18:36:59 ip-10-2-40-129 systemd[1]: Started The Apache HTTP Server.

Para habilitar el servicio en el arranque, use este comando

sudo systemctl enable apache2

Para confirmar que Apache 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 predeterminada de Apache2 Ubuntu .

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 tenga la libertad de usar el dominio de su elección. Tenga en cuenta que el DNS del dominio que se utilizará ya debe estar configurado para apuntar a la dirección IP del servidor.
Confírmelo con:

dig -t A site1.citizix.com

Creación de 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 . Se recomienda 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 simple index.php página para servir desde nuestro sitio. Necesitará vim instalado para que esto funcione, si no, use este comando:

sudo apt 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 el $USER el usuario posee el directorio del sitio:

sudo chown -R $USER:$GROUP /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/apache2/sites-available/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/apache2/site1.citizix.com.error.log
    CustomLog /var/log/apache2/site1.citizix.com.requests.log combined
</VirtualHost>

Esto le dirá a Apache lo siguiente:

  • ServerNameServerAlias – 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

Habilitar el sitio

$ sudo a2ensite site1.citizix.com
Enabling site site1.citizix.com.
To activate the new configuration, you need to run:
  systemctl reload apache2

Luego recarga la configuración de apache2

sudo systemctl reload apache2

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 anterior, permítanos acceder a él yendo a http://server_url/ . En mi caso, esto es http://site1.citizix.com/ . Deberías ver la página de información de php.

Conclusión

En esta guía, logramos configurar Apache para servir el sitio PHP en un servidor Ubuntu 20.04.


Ubuntu
  1. Cómo instalar LAMP Stack en Ubuntu 22.04 LTS

  2. Cómo instalar Apache, MySQL, PHP (LAMP) en Ubuntu 16.04 LTS

  3. Cómo instalar y configurar PHP y Nginx (LEMP) en Ubuntu 20.04

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

  5. Cómo instalar y configurar PHP y Apache (pila LAMP) en OpenSUSE Leap 15.3

Cómo instalar LAMP Stack en servidor/escritorio Ubuntu 20.04

Cómo instalar Apache, MySQL, PHP (pila LAMP) en Ubuntu

Cómo configurar la pila LAMP (Apache, MariaDB y PHP) en Debian 11

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

Cómo instalar la pila Apache, MySQL, PHP (LAMP) en Ubuntu 16.04

Cómo instalar LAMP en Ubuntu