Cómo instalar la pila LAMP en Ubuntu 18.04

La pila LAMP significa Linux, Apache, MySQL y PHP: un conjunto de software de código abierto instalado en su servidor para alojar aplicaciones y sitios web dinámicos. Cada componente de la pila LAMP tiene un propósito distinto:

  • Linux sirve como sistema operativo.
  • Apache es el servidor web.
  • MySQL es para el almacenamiento y la gestión de bases de datos.
  • PHP es para procesar el contenido dinámico de un sitio web.

Si bien existen otras pilas tecnológicas, este artículo lo guía a través de cómo instalar la pila LAMP en un sistema Ubuntu 18.04.

Requisitos

Para seguir y completar este tutorial, necesitará lo siguiente:

  • Un sistema con una instalación de Ubuntu 18.04.
  • Un no root, sudo-cuenta de usuario habilitada.
  • Un firewall configurado (generalmente configurado de forma predeterminada en las instalaciones de Ubuntu).

Nota: antes de instalar Ubuntu 18.04 en su sistema, asegúrese de que haya al menos 25 GB de espacio de almacenamiento disponible. El requisito mínimo es de 5 GB para una instalación mínima. Además, es recomendable tener una copia de seguridad reciente de sus datos antes de continuar con la instalación o actualización de su sistema operativo.

Cómo instalar la pila LAMP en Ubuntu 18.04

Paso 1: Instalar Linux

Instalar Ubuntu 18.04 en su servidor.

Configuración inicial del servidor

Una vez que se instala Ubuntu 18.04, hay algunos pasos adicionales que debe seguir antes de que esté listo para instalar la pila LAMP en su sistema Ubuntu.

Crear un nuevo usuario

Una vez que inicie sesión en su sistema como usuario raíz, puede crear un nuevo usuario con el siguiente comando. En esto exampleel nombre del nuevo usuario es john.

                      
                        # adduser john
                      
                    

Se le pedirá una contraseña para su cuenta recién creada, así como algunos detalles más que puede omitir presionando Enter . Asegúrese de usar una contraseña segura y no use la misma que podría haber usado en otra cuenta.

                      
                        [email protected]:~# adduser john
Adding user `john' ...
Adding new group `john' (1000) ...
Adding new user `john' (1000) with group `john' ...
Creating home directory `/home/john' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Changing the user information for john
Enter the new value, or press ENTER for the default
        Full Name []:
        Room Number []:
        Work Phone []:
        Home Phone []:
        Other []:
Is the information correct? [Y/n] Y
                      
                    

Concesión de privilegios de raíz

Cuando piense en los privilegios de root en un sistema Linux, piense en los derechos administrativos en un sistema operativo Windows. Otorgar privilegios de root a su nuevo usuario le permite realizar tareas administrativas como editar archivos de configuración o reiniciar su sistema sin la necesidad de cerrar sesión y volver a iniciar sesión como usuario root.

Otorgar privilegios de raíz a su nueva cuenta agrega al usuario a la sudo grupo, lo que les permite ejecutar comandos como root anteponiendo cada comando con sudo. Para agregar su usuario a un sudo grupo, use el siguiente comando.

                      
                        # usermod -aG sudo john
                      
                    

Aquí está la salida.

                      
                        [email protected]:~# usermod -aG sudo john
[email protected]:~# getent group sudo 
sudo:x:27:john
                      
                    

Una vez completado, continúe con el siguiente paso de instalación Apache.

Paso 2: Instalar Apache

Apache es un software de servidor web gratuito y de código abierto que funciona con diferentes sistemas operativos, incluido Ubuntu 18.04. Es ampliamente utilizado, está bien documentado y funciona muy bien con PHP. Antes de instalar Apache, es imprescindible actualizar los repositorios. Use el siguiente comando para hacerlo.

                      
                        # sudo apt update
                      
                    

Si es la primera vez que usa el sudo comando, se le pedirá su contraseña de root. Una vez que lo ingrese y haga clic en Enter verá un resultado similar al siguiente.

                      
                        [email protected]:/root$ sudo apt update
[sudo] password for john:
Hit:1 https://nl.archive.ubuntu.com/ubuntu bionic InRelease
Get:2 https://nl.archive.ubuntu.com/ubuntu bionic-security InRelease [88.7 kB]
Get:3 https://nl.archive.ubuntu.com/ubuntu bionic-updates InRelease [88.7 kB]
Get:4 https://nl.archive.ubuntu.com/ubuntu bionic-backports InRelease [74.6 kB]
Get:5 https://nl.archive.ubuntu.com/ubuntu bionic-security/main Sources [260 kB]
Get:6 https://nl.archive.ubuntu.com/ubuntu bionic-security/universe Sources [293 kB]
Get:7 https://nl.archive.ubuntu.com/ubuntu bionic-security/restricted Sources [21.7 kB]
Get:8 https://nl.archive.ubuntu.com/ubuntu bionic-security/multiverse Sources [7,972 B]
Get:9 https://nl.archive.ubuntu.com/ubuntu bionic-security/main amd64 Packages [2,029 kB]
Get:10 https://nl.archive.ubuntu.com/ubuntu bionic-security/main i386 Packages [1,098 kB]
Get:11 https://nl.archive.ubuntu.com/ubuntu bionic-security/main Translation-en [361 kB]
Get:12 https://nl.archive.ubuntu.com/ubuntu bionic-security/restricted i386 Packages [23.2 kB]
Get:13 https://nl.archive.ubuntu.com/ubuntu bionic-security/restricted amd64 Packages [572 kB]
Get:14 https://nl.archive.ubuntu.com/ubuntu bionic-security/restricted Translation-en [77.5 kB]
Get:15 https://nl.archive.ubuntu.com/ubuntu bionic-security/universe amd64 Packages [1,166 kB]
Get:16 https://nl.archive.ubuntu.com/ubuntu bionic-security/universe i386 Packages [1,005 kB]
Get:17 https://nl.archive.ubuntu.com/ubuntu bionic-security/universe Translation-en [269 kB]
Get:18 https://nl.archive.ubuntu.com/ubuntu bionic-security/multiverse amd64 Packages [20.9 kB]
Get:19 https://nl.archive.ubuntu.com/ubuntu bionic-security/multiverse i386 Packages [6,480 B]
Get:20 https://nl.archive.ubuntu.com/ubuntu bionic-security/multiverse Translation-en [4,732 B]
Get:21 https://nl.archive.ubuntu.com/ubuntu bionic-updates/multiverse Sources [15.9 kB]
Get:22 https://nl.archive.ubuntu.com/ubuntu bionic-updates/restricted Sources [24.5 kB]
Get:23 https://nl.archive.ubuntu.com/ubuntu bionic-updates/main Sources [520 kB]
Get:24 https://nl.archive.ubuntu.com/ubuntu bionic-updates/universe Sources [470 kB]
Get:25 https://nl.archive.ubuntu.com/ubuntu bionic-updates/main i386 Packages [1,403 kB]
Get:26 https://nl.archive.ubuntu.com/ubuntu bionic-updates/main amd64 Packages [2,374 kB]
Get:27 https://nl.archive.ubuntu.com/ubuntu bionic-updates/main Translation-en [454 kB]
Get:28 https://nl.archive.ubuntu.com/ubuntu bionic-updates/restricted amd64 Packages [596 kB]
Get:29 https://nl.archive.ubuntu.com/ubuntu bionic-updates/restricted i386 Packages [29.9 kB]
Get:30 https://nl.archive.ubuntu.com/ubuntu bionic-updates/restricted Translation-en [81.3 kB]
Get:31 https://nl.archive.ubuntu.com/ubuntu bionic-updates/universe amd64 Packages [1,781 kB]
Get:32 https://nl.archive.ubuntu.com/ubuntu bionic-updates/universe i386 Packages [1,596 kB]
Get:33 https://nl.archive.ubuntu.com/ubuntu bionic-updates/universe Translation-en [386 kB]
Get:34 https://nl.archive.ubuntu.com/ubuntu bionic-updates/multiverse amd64 Packages [27.2 kB]
Get:35 https://nl.archive.ubuntu.com/ubuntu bionic-updates/multiverse i386 Packages [11.6 kB]
Get:36 https://nl.archive.ubuntu.com/ubuntu bionic-updates/multiverse Translation-en [6,808 B]
Get:37 https://nl.archive.ubuntu.com/ubuntu bionic-backports/main Sources [5,476 B]
Get:38 https://nl.archive.ubuntu.com/ubuntu bionic-backports/universe Sources [6,600 B]
Get:39 https://nl.archive.ubuntu.com/ubuntu bionic-backports/main i386 Packages [10.3 kB]
Get:40 https://nl.archive.ubuntu.com/ubuntu bionic-backports/main amd64 Packages [10.3 kB]
Get:41 https://nl.archive.ubuntu.com/ubuntu bionic-backports/main Translation-en [4,824 B]
Get:42 https://nl.archive.ubuntu.com/ubuntu bionic-backports/universe i386 Packages [11.3 kB]
Get:43 https://nl.archive.ubuntu.com/ubuntu bionic-backports/universe amd64 Packages [11.3 kB]
Get:44 https://nl.archive.ubuntu.com/ubuntu bionic-backports/universe Translation-en [5,772 B]
Fetched 17.3 MB in 4s (4,768 kB/s)
Reading package lists... Done
Building dependency tree
Reading state information... Done
116 packages can be upgraded. Run 'apt list --upgradable' to see them.
                      
                    

Después de que sus repositorios se actualicen, use el siguiente comando para iniciar el Apache Instalar en pc.

                      
                        # sudo apt apt install apache2
                      
                    

Si todo va bien, recibirá el siguiente resultado. Tienes que confirmar algunas opciones durante la instalación. Enter Y cuando se le solicite, y el resto se hace automáticamente.

                      
                        [email protected]:/root$ sudo apt install apache2
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
  apache2-bin apache2-data apache2-utils libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap liblua5.2-0 ssl-cert
Suggested packages:
  www-browser apache2-doc apache2-suexec-pristine | apache2-suexec-custom openssl-blacklist
The following NEW packages will be installed:
  apache2 apache2-bin apache2-data apache2-utils libapr1 libaprutil1 libaprutil1-dbd-sqlite3 libaprutil1-ldap liblua5.2-0 ssl-cert
0 upgraded, 10 newly installed, 0 to remove and 116 not upgraded.
Need to get 1,729 kB of archives.
After this operation, 6,997 kB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 https://nl.archive.ubuntu.com/ubuntu bionic/main amd64 libapr1 amd64 1.6.3-2 [90.9 kB]
Get:2 https://nl.archive.ubuntu.com/ubuntu bionic/main amd64 libaprutil1 amd64 1.6.1-2 [84.4 kB]
Get:3 https://nl.archive.ubuntu.com/ubuntu bionic/main amd64 libaprutil1-dbd-sqlite3 amd64 1.6.1-2 [10.6 kB]
Get:4 https://nl.archive.ubuntu.com/ubuntu bionic/main amd64 libaprutil1-ldap amd64 1.6.1-2 [8,764 B]
Get:5 https://nl.archive.ubuntu.com/ubuntu bionic/main amd64 liblua5.2-0 amd64 5.2.4-1.1build1 [108 kB]
Get:6 https://nl.archive.ubuntu.com/ubuntu bionic-security/main amd64 apache2-bin amd64 2.4.29-1ubuntu4.21 [1,070 kB]
Get:7 https://nl.archive.ubuntu.com/ubuntu bionic-security/main amd64 apache2-utils amd64 2.4.29-1ubuntu4.21 [83.8 kB]
Get:8 https://nl.archive.ubuntu.com/ubuntu bionic-security/main amd64 apache2-data all 2.4.29-1ubuntu4.21 [160 kB]
Get:9 https://nl.archive.ubuntu.com/ubuntu bionic-security/main amd64 apache2 amd64 2.4.29-1ubuntu4.21 [95.1 kB]
Get:10 https://nl.archive.ubuntu.com/ubuntu bionic/main amd64 ssl-cert all Setting up apache2 (2.4.29-1ubuntu4.21) ...
Enabling module mpm_event.
Enabling module authz_core.
Enabling module authz_host.
Enabling module authn_core.
Enabling module auth_basic.
Enabling module access_compat.
Enabling module authn_file.
Enabling module authz_user.
Enabling module alias.
Enabling module dir.
Enabling module autoindex.
Enabling module env.
Enabling module mime.
Enabling module negotiation.
Enabling module setenvif.
Enabling module filter.
Enabling module deflate.
Enabling module status.
Enabling module reqtimeout.
Enabling conf charset.
Enabling conf localized-error-pages.
Enabling conf other-vhosts-access-log.
Enabling conf security.
Enabling conf serve-cgi-bin.
Enabling site 000-default.
Created symlink /etc/systemd/system/multi-user.target.wants/apache2.service → /lib/systemd/system/apache2.service.
Created symlink /etc/systemd/system/multi-user.target.wants/apache-htcacheclean.service → /lib/systemd/system/apache-htcacheclean.service.
Processing triggers for libc-bin (2.27-3ubuntu1.4) ...
Processing triggers for systemd (237-3ubuntu10.44) ...
Processing triggers for man-db (2.8.3-2ubuntu0.1) ...
Processing triggers for ufw (0.36-0ubuntu0.18.04.1) ...
Processing triggers for ureadahead (0.100.0-21) ...
                      
                    

Una vez completada la instalación, verifique que Apache instalado correctamente ejecutando el siguiente comando.

                      
                        # service apache2 status
                      
                    

Aquí está la salida.

                      
                        [email protected]:/root$ service apache2 status
● apache2.service - The Apache HTTP Server
   Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
  Drop-In: /lib/systemd/system/apache2.service.d
           └─apache2-systemd.conf
   Active: active (running) since Sat 2022-01-29 17:07:42 CET; 4min 25s ago
 Main PID: 2161 (apache2)
    Tasks: 55 (limit: 2316)
   CGroup: /system.slice/apache2.service
           ├─2161 /usr/sbin/apache2 -k start
           ├─2163 /usr/sbin/apache2 -k start
           └─2164 /usr/sbin/apache2 -k start
                      
                    

Ha instalado con éxito Apache en su sistema.

Asegúrese de que el firewall permita el tráfico HTTP y HTTPS. Apache utiliza un cortafuegos sin complicaciones (UFW) en lugar de iptables para administrar las reglas del cortafuegos. Use el siguiente comando para verificar si UFW tiene un perfil establecido para Apache.

                      
                        # sudo ufw app list
                      
                    

En el siguiente resultado, vemos el perfil de Apache.

                      
                        [email protected]:/root$ sudo ufw app list
Available applications:
  Apache
  Apache Full
  Apache Secure
  OpenSSH
                      
                    

Para verificar si el tráfico a los puertos 80 y 443 (HTTP y HTTPS) está habilitado, eche un vistazo a los detalles completos del perfil de Apache.

                      
                        # sudo ufw app info "Apache Full"
                      
                    

Aquí está la salida.

                      
                        [email protected]:/root$ sudo ufw app info "Apache Full"
Profile: Apache Full
Title: Web Server (HTTP,HTTPS)
Description: Apache v2 is the next generation of the omnipresent Apache web
server.

Ports:
  80,443/tcp
                      
                    

Lo último que debe hacer es permitir el tráfico HTTP y HTTPS entrante con el siguiente comando.

                      
                        # sudo ufw allow "Apache Full"
                      
                    

La salida es la siguiente.

                      
                        [email protected]:/root$ sudo ufw allow "Apache Full"
Rules updated
Rules updated (v6)
                      
                    

Después de completar estos pasos, verifique que todo funcione según lo previsto ingresando la IP del servidor en su navegador de Internet y presionando Enter . Si ve una página similar a la imagen de abajo, Apache instalado correctamente y el cortafuegos está configurado para tráfico HTTP y HTTPS.

H3: Paso 3: Instalar MySQL

Ideal tanto para aplicaciones pequeñas como grandes, MySQL otorga acceso a las bases de datos que utilizará para organizar y almacenar información.

Para iniciar el proceso de instalación, utilizaremos el comando apt install.

                      
                        # sudo apt install mysql-server
                      
                    

El resultado de este comando es una lista de información de paquetes para instalar, así como la cantidad de espacio en disco que requieren.

                      
                        [email protected]:/root$ sudo apt install mysql-server
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
  libaio1 libcgi-fast-perl libcgi-pm-perl libencode-locale-perl libevent-core-2.1-6 libfcgi-perl libhtml-parser-perl
  libhtml-tagset-perl libhtml-template-perl libhttp-date-perl libhttp-message-perl libio-html-perl liblwp-mediatypes-perl
  libtimedate-perl liburi-perl mysql-client-5.7 mysql-client-core-5.7 mysql-common mysql-server-5.7 mysql-server-core-5.7
Suggested packages:
  libdata-dump-perl libipc-sharedcache-perl libwww-perl mailx tinyca
The following NEW packages will be installed:
  libaio1 libcgi-fast-perl libcgi-pm-perl libencode-locale-perl libevent-core-2.1-6 libfcgi-perl libhtml-parser-perl
  libhtml-tagset-perl libhtml-template-perl libhttp-date-perl libhttp-message-perl libio-html-perl liblwp-mediatypes-perl
  libtimedate-perl liburi-perl mysql-client-5.7 mysql-client-core-5.7 mysql-common mysql-server mysql-server-5.7
  mysql-server-core-5.7
0 upgraded, 21 newly installed, 0 to remove and 116 not upgraded.
Need to get 19.7 MB of archives.
After this operation, 156 MB of additional disk space will be used.
Do you want to continue? [Y/n] Y
Get:1 https://nl.archive.ubuntu.com/ubuntu bionic/main amd64 mysql-common all 5.8+1.0.4 [7,308 B]
Get:2 https://nl.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libaio1 amd64 0.3.110-5ubuntu0.1 [6,476 B]
Get:3 https://nl.archive.ubuntu.com/ubuntu bionic-security/main amd64 mysql-client-core-5.7 amd64 5.7.36-0ubuntu0.18.04.1 [6,638 kB]
Get:4 https://nl.archive.ubuntu.com/ubuntu bionic-security/main amd64 mysql-client-5.7 amd64 5.7.36-0ubuntu0.18.04.1 [1,942 kB]
Get:5 https://nl.archive.ubuntu.com/ubuntu bionic-security/main amd64 mysql-server-core-5.7 amd64 5.7.36-0ubuntu0.18.04.1 [7,426 kB]
Get:6 https://nl.archive.ubuntu.com/ubuntu bionic/main amd64 libevent-core-2.1-6 amd64 2.1.8-stable-4build1 [85.9 kB]
Get:7 https://nl.archive.ubuntu.com/ubuntu bionic-security/main amd64 mysql-server-5.7 amd64 5.7.36-0ubuntu0.18.04.1 [2,906 kB]
Get:8 https://nl.archive.ubuntu.com/ubuntu bionic/main amd64 libhtml-tagset-perl all 3.20-3 [12.1 kB]
Get:9 https://nl.archive.ubuntu.com/ubuntu bionic/main amd64 liburi-perl all 1.73-1 [77.2 kB]
Get:10 https://nl.archive.ubuntu.com/ubuntu bionic/main amd64 libhtml-parser-perl amd64 3.72-3build1 [85.9 kB]
Get:11 https://nl.archive.ubuntu.com/ubuntu bionic/main amd64 libcgi-pm-perl all 4.38-1 [185 kB]
Get:12 https://nl.archive.ubuntu.com/ubuntu bionic/main amd64 libfcgi-perl amd64 0.78-2build1 [32.8 kB]
Get:13 https://nl.archive.ubuntu.com/ubuntu bionic/main amd64 libcgi-fast-perl all 1:2.13-1 [9,940 B]
Get:14 https://nl.archive.ubuntu.com/ubuntu bionic/main amd64 libencode-locale-perl all 1.05-1 [12.3 kB]
Get:15 https://nl.archive.ubuntu.com/ubuntu bionic/main amd64 libhtml-template-perl all 2.97-1 [59.0 kB]
Get:16 https://nl.archive.ubuntu.com/ubuntu bionic/main amd64 libtimedate-perl all 2.3000-2 [37.5 kB]
Get:17 https://nl.archive.ubuntu.com/ubuntu bionic/main amd64 libhttp-date-perl all 6.02-1 [10.4 kB]
Get:18 https://nl.archive.ubuntu.com/ubuntu bionic/main amd64 libio-html-perl all 1.001-1 [14.9 kB]
Get:19 https://nl.archive.ubuntu.com/ubuntu bionic/main amd64 liblwp-mediatypes-perl all 6.02-1 [21.7 kB]
Get:20 https://nl.archive.ubuntu.com/ubuntu bionic/main amd64 libhttp-message-perl all 6.14-1 [72.1 kB]
Get:21 https://nl.archive.ubuntu.com/ubuntu bionic-security/main amd64 mysql-server all 5.7.36-0ubuntu0.18.04.1 [9,944 B]
Fetched 19.7 MB in 2s (10.5 MB/s)
Preconfiguring packages ...
                      
                    

A continuación, utilice este script de seguridad personalizado y preinstalado para encargarse de las amenazas innecesarias del sistema y bloquear el acceso a su base de datos.

                      
                        # sudo mysql_secure_installation
                      
                    

Cuando se ejecuta, el sistema le pregunta si desea colocar una capa protegida con contraseña en su base de datos. Después de escribir Y para continuar y configurar su contraseña, le solicita que seleccione un nivel de validación de contraseña.

La configuración de contraseña baja requiere ocho caracteres de longitud. El ajuste fuerte requiere lo siguiente:

  • Debe tener ocho caracteres de longitud.
  • Debe tener caracteres numéricos, mayúsculas y minúsculas y especiales.
  • No puede incluir palabras comunes del diccionario.

Cuando termine de elegir un nivel de protección con contraseña, continúe con la instalación estableciendo una contraseña para el usuario root de MySQL.

Nota: establecer una contraseña para el usuario raíz de MySQL es un paso importante porque tener una contraseña básica expondrá su base de datos a amenazas de seguridad graves.

Después de eso, el sistema solicita algunos cambios en la configuración de MySQL para aumentar la seguridad y eliminar algunas amenazas comunes. Realice las selecciones adecuadas para que su configuración continúe.

                      
                        [email protected]:/root$ sudo mysql_secure_installation

Securing the MySQL server deployment.

Connecting to MySQL using a blank password.

VALIDATE PASSWORD PLUGIN can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD plugin?

Press y|Y for Yes, any other key for No: Y

There are three levels of password validation policy:

LOW    Length >= 8
MEDIUM Length >= 8, numeric, mixed case, and special characters
STRONG Length >= 8, numeric, mixed case, special characters and dictionary                  file

Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 2
Please set the password for root here.

New password:

Re-enter new password:

Estimated strength of the password: 100
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : Y
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.

Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y
Success.


Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.

Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y
Success.

By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.


Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y
 - Dropping test database...
Success.

 - Removing privileges on test database...
Success.

Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.

Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y
Success.

All done!
                      
                    

Inicie sesión en la consola de MySQL con el siguiente comando para comprobar si MySQL funciona correctamente.

                      
                        # sudo mysql
                      
                    

La salida es la siguiente.

                      
                        [email protected]:~$ sudo mysql
Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 10
Server version: 5.7.36-0ubuntu0.18.04.1 (Ubuntu)

Copyright (c) 2000, 2021, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

mysql>
                      
                    

Use el siguiente comando para salir de la consola.

                      
                        mysql>exit
                      
                    

MySQL está instalado, protegido y listo para usar.

Paso 4: Instalar PHP

PHP es un lenguaje de secuencias de comandos del lado del servidor de código abierto. Instale el cliente en su servidor para procesar su código y conectarse a sus bases de datos MySQL. Una vez que PHP se conecta a sus bases de datos y tiene la información necesaria, entrega esa información a Apache para mostrar el contenido a los visitantes de su página.

Junto con el propio cliente PHP, debe instalar dos bibliotecas:

  • libapache2-mod-php: Integra PHP en Apache.
  • php-mysql: permite que PHP se conecte a bases de datos MySQL.

Instale estas dos bibliotecas con el siguiente comando.

                      
                        # sudo apt install php libapache2-mod-php php-mysql
                      
                    

Aquí está la salida.

                      
                        [email protected]:/root$ sudo apt install php libapache2-mod-php php-mysql
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following additional packages will be installed:
  libapache2-mod-php7.2 libsodium23 php-common php7.2 php7.2-cli php7.2-common php7.2-json php7.2-mysql php7.2-opcache
  php7.2-readline
Suggested packages:
  php-pear
The following NEW packages will be installed:
  libapache2-mod-php libapache2-mod-php7.2 libsodium23 php php-common php-mysql php7.2 php7.2-cli php7.2-common php7.2-json
  php7.2-mysql php7.2-opcache php7.2-readline
0 upgraded, 13 newly installed, 0 to remove and 116 not upgraded.
Need to get 4,136 kB of archives.
After this operation, 18.0 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Creating config file /etc/php/7.2/mods-available/pdo_mysql.ini with new version
Setting up php7.2-cli (7.2.24-0ubuntu0.18.04.10) ...
update-alternatives: using /usr/bin/php7.2 to provide /usr/bin/php (php) in auto mode
update-alternatives: using /usr/bin/phar7.2 to provide /usr/bin/phar (phar) in auto mode
update-alternatives: using /usr/bin/phar.phar7.2 to provide /usr/bin/phar.phar (phar.phar) in auto mode

Creating config file /etc/php/7.2/cli/php.ini with new version
Setting up libapache2-mod-php7.2 (7.2.24-0ubuntu0.18.04.10) ...

Creating config file /etc/php/7.2/apache2/php.ini with new version
Module mpm_event disabled.
Enabling module mpm_prefork.
apache2_switch_mpm Switch to prefork
apache2_invoke: Enable module php7.2
Setting up php-mysql (1:7.2+60ubuntu1) ...
Setting up libapache2-mod-php (1:7.2+60ubuntu1) ...
Setting up php7.2 (7.2.24-0ubuntu0.18.04.10) ...
Setting up php (1:7.2+60ubuntu1) ...
Processing triggers for man-db (2.8.3-2ubuntu0.1) ...
Processing triggers for libc-bin (2.27-3ubuntu1.4) ...
[email protected]:/root$
                      
                    

Una vez instalado, pruebe que PHP funciona creando un script PHP simple que ejecutará una función phpinfo() y proporcionará todos los detalles de su instalación de PHP. Coloque este archivo en su directorio raíz web para que su servidor web pueda leerlo.

                      
                        # sudo vi /var/www/html/info.php
                      
                    

Coloque el siguiente texto en el archivo y guárdelo.

                      
                        <?php
phpinfo();
                      
                    

Si ingresa serverIP/info.php en nuestro navegador (serverIP debe reemplazarse con su servidor IP real), verá una página similar a la imagen a continuación.

PHP funciona según lo previsto en su servidor, y puede ver todos los detalles sobre su instalación de PHP aquí. Ahora podemos eliminar este archivo con el siguiente comando.

                      
                        # sudo rm /var/www/html/info.php
                      
                    

Ha completado la instalación de la pila LAMP en su entorno de servidor Ubuntu.

Terminando

Si siguió todos los pasos, pudo instalar la pila LAMP en su servidor Ubuntu 18.04. Esta instalación le permite alojar aplicaciones y sitios web dinámicos en su servidor e instalar varios software web para que pueda trabajar, incluidos WordPress, Magento y muchos más.

Alojamiento VPS de Liquid Web, Cloud Los servidores dedicados y los servidores dedicados vienen con imágenes de servidor que incluyen la pila LAMP en el momento de la implementación. Ofrecemos soporte 24/7/365 en servidores centrales y completamente administrados. Póngase en contacto con nuestro equipo de ventas para configurar su servidor hoy.

Related Posts