Instalación básica de Wordpress en Ubuntu 20.04

per Victor Carceler darrera modificació 2021-01-07T10:27:07+02:00

https://commons.wikimedia.org/wiki/File:WordPress.svgWordpress es un conocido gestor de contenidos orientado a implementar un blog aunque también puede utilizarse para construir diferentes páginas web.

Con frecuencia conviene realizar una instalación de Wordpress como paso previo a algún trabajo o práctica. Así que aquí voy a demostrar cómo se realiza una instalación básica sobre Ubuntu 20.04 server.

Instalación de PHP y MySQL

Wordpress está escrito en PHP y puede utilizar diferentes SGBD pero con frecuencia se configura para que utilice MySQL o su fork MariaDB.

Aquí se va a realizar la instalación con php-fpm (que ofrece mejor rendimiento que mod_php que obliga a Apache a utilizar mpm_prefork en lugar de mpm_event) y con MySQL.

Comenzaremos instalando PHP con las extensiones necesarias para Wordrpess y MySQL

root@wordpress:/home/usuario# apt update && apt install mysql-server php-fpm php-common php-mbstring php-xmlrpc php-soap php-gd php-xml php-intl php-mysql php-cli php-ldap php-zip php-curl

Después conectamos con MySQL

root@wordpress:/home/usuario# mysql -u root
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.20-0ubuntu0.20.04.1 (Ubuntu)

Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.

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> status
--------------
mysql  Ver 8.0.20-0ubuntu0.20.04.1 for Linux on x86_64 ((Ubuntu))

Connection id:		8
Current database:	
Current user:		root@localhost
SSL:			Not in use
Current pager:		stdout
Using outfile:		''
Using delimiter:	;
Server version:		8.0.20-0ubuntu0.20.04.1 (Ubuntu)
Protocol version:	10
Connection:		Localhost via UNIX socket
Server characterset:	utf8mb4
Db     characterset:	utf8mb4
Client characterset:	utf8mb4
Conn.  characterset:	utf8mb4
UNIX socket:		/var/run/mysqld/mysqld.sock
Binary data as:		Hexadecimal
Uptime:			4 min 13 sec

Threads: 2  Questions: 5  Slow queries: 0  Opens: 115  Flush tables: 3  Open tables: 36  Queries per second avg: 0.019
--------------

mysql>

Definimos la base de datos wordpress

mysql> CREATE DATABASE wordpress;
Query OK, 1 row affected (0.03 sec)

mysql> 

Declaramos que wordpress_user podrá acceder utilizando la contraseña superpassword

mysql> CREATE USER 'wordpress_user'@'localhost' IDENTIFIED BY 'superpassword';
Query OK, 0 rows affected (0.04 sec)

mysql>

Le concedemos todos los privilegios al usuario wordpress_user sobre la BBDD wordpress y cerramos la sesión de MySQL

mysql> GRANT ALL ON wordpress.* to 'wordpress_user'@'localhost';
Query OK, 0 rows affected (0.02 sec)

mysql> exit
Bye
root@wordpress:/home/usuario#

Instalación y configuración de Apache

Instalación del servidor:

root@wordpress:/home/usuario# apt install apache2

Activación del módulo proxy_fcgi:

root@wordpress:/home/usuario# a2enmod proxy_fcgi

Activamos la configuración de php7.4-fpm:

root@wordpress:/home/usuario# a2enconf php7.4-fpm

Y reinicio del servidor para que arranque con la nueva configuración:

root@wordpress:/home/usuario# systemctl restart apache2

Descarga de Wordpress

Cambiamos el directorio de trabajo a /var/www para descargar y desarchivar Wordpress:

root@wordpress:/home/usuario# cd /var/www
root@wordpress:/var/www# wget https://wordpress.org/latest.tar.gz
--2020-05-09 10:35:34--  https://wordpress.org/latest.tar.gz
Resolving wordpress.org (wordpress.org)... 198.143.164.252
Connecting to wordpress.org (wordpress.org)|198.143.164.252|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 12234700 (12M) [application/octet-stream]
Saving to: ‘latest.tar.gz’

latest.tar.gz                                      100%[===============================================================================================================>]  11,67M  2,95MB/s    in 4,0s    

2020-05-09 10:35:42 (2,95 MB/s) - ‘latest.tar.gz’ saved [12234700/12234700]

root@wordpress:/var/www# tar xzf latest.tar.gz

Con esto tendremos en /var/www/html la página por defecto de Apache y en /var/www/wordpress la aplicación que hemos descargado. Podemos mover los directorios para guardar la página original en /var/www/html-original y colocar Wordpress en su lugar. También será necesario cambiar el propietario de los ficheros a www-data.

root@wordpress:/var/www# mv html html-original
root@wordpress:/var/www# mv wordpress html root@wordpress:/var/www# chown -R www-data html

Últimos pasos desde el navegador

Los últimos pasos de la instalación se pueden realizar desde el navegador. Al abrir en el navegador la dirección del servidor en el que se ha instalado Wordpress deberemos indicar los parámetros necesarios para realizar la conexión con MySQL, el título del blog, el usuario administrador con su correo. ¡Y listo!

Captura de pantalla de 2020-05-09 13-33-10.pngCaptura de pantalla de 2020-05-09 13-37-28.pngCaptura de pantalla de 2020-05-09 13-39-41.pngCaptura de pantalla de 2020-05-09 13-40-32.png