Cómo instalar WordPress con Apache en Ubuntu 20.04


WordPress es la plataforma más popular del mundo para crear sitios web, ya sea un blog, un sitio web de comercio electrónico, un sitio web comercial, un sitio web de cartera, un directorio de negocios en línea, etc. Es gratuito y de código abierto, fácil de instalar, aprender y usar, altamente conectable y personalizable también.

Esta guía muestra cómo instalar la última versión de WordPress con Apache en Ubuntu 20.04. Se asume que tiene la pila LAMP instalada y bien configurada para alojar sitios web; de lo contrario, consulte nuestra guía:

  • Cómo instalar LAMP Stack con PhpMyAdmin en Ubuntu 20.04

Instalación de WordPress en Ubuntu 20.04

1. Una vez que la pila LAMP (Apache, MariaDB y PHP) esté instalada y configurada en el servidor Ubuntu 20.04, puede continuar para descargar la última versión de WordPress usando el siguiente comando wget.

$ wget -c http://wordpress.org/latest.tar.gz

2. Una vez que se complete la descarga, extraiga el archivo archivado usando el comando tar como se muestra.

$ tar -xzvf latest.tar.gz

3. A continuación, mueva el directorio de WordPress extraído a la raíz de su documento, es decir, /var/www/html/ y debajo de su sitio web como se muestra (reemplace mysite.com con el nombre de su sitio web o el nombre de dominio). El siguiente comando creará un directorio mysite.com y moverá los archivos de WordPress debajo de él.

$ ls -l
$ sudo cp -R wordpress /var/www/html/mysite.com
$ ls -l /var/www/html/

4. Ahora configure los permisos apropiados en el directorio del sitio web (/var/www/html/mysite.com). Debe ser propiedad del usuario y grupo de Apache2 llamado www-data.

$ sudo chown -R www-data:www-data /var/www/html/mysite.com
$ sudo chmod -R 775 /var/www/html/mysite.com

Creación de una base de datos de WordPress para un sitio web

5. Para comenzar, inicie sesión en el shell de su base de datos MariaDB usando el siguiente comando mysql con el indicador -u para proporcionar el nombre de usuario que debe ser root y -p para ingresar una contraseña que configuró para la cuenta raíz de MySQL cuando instaló el software MariaDB.

$ sudo mysql -u root -p

6. Después de iniciar sesión, ejecute los siguientes comandos para crear la base de datos de su sitio y un usuario de base de datos con privilegios como se muestra. Recuerde reemplazar "mysite", "mysiteadmin" y "[email protected]" con el nombre de la base de datos, el nombre de usuario de la base de datos y la contraseña del usuario.

MariaDB [(none)]> CREATE DATABASE mysite;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON mysite.* TO 'mysiteadmin'@'localhost' IDENTIFIED BY '[email protected]!';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT

7. Luego, muévase a la raíz de documentos de su sitio web, cree un archivo wp-config.php a partir del archivo de configuración de muestra proporcionado como se muestra.

$ cd /var/www/html/mysite.com
$ sudo mv wp-config-sample.php wp-config.php

8. Luego abra el archivo de configuración wp-config.php para editarlo.

$ sudo vim wp-config.php

y actualice los parámetros de conexión de la base de datos (nombre de la base de datos, usuario de la base de datos y la contraseña del usuario creada anteriormente) como se muestra en la siguiente captura de pantalla.

Creación de Apache VirtualHost para el sitio web de WordPress

9. A continuación, debe configurar el servidor web Apache para que sirva a su sitio de WordPress utilizando su nombre de dominio completo, creando un host virtual para él en la configuración de Apache.

Para crear y activar un nuevo host virtual, cree un nuevo archivo en el directorio/etc/apache2/sites-available /. En este ejemplo, llamaremos al archivo mysite.com.conf (debe terminar con la extensión .conf ).

$ sudo vim /etc/apache2/sites-available/mysite.com.conf

Luego copie y pegue la siguiente configuración en ella (reemplazando los correos electrónicos ServerName y ServerAdmin con sus valores).

<VirtualHost *:80>
	ServerName mysite.com
	ServerAdmin [email protected]
	DocumentRoot /var/www/html/mysite.com
	ErrorLog ${APACHE_LOG_DIR}/error.log
	CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

Guarde el archivo y ciérrelo.

10. Luego, verifique la configuración de Apache para ver si la sintaxis es correcta. Si la sintaxis es correcta, habilite el nuevo sitio y vuelva a cargar el servicio apache2 para aplicar los nuevos cambios.

$ apache2ctl -t
$ sudo a2ensite mysite.com.conf
$ sudo systemctl reload apache2

11. Además, desactive el host virtual predeterminado para permitir que su nuevo sitio se cargue correctamente desde un navegador web.

$ sudo a2dissite 000-default.conf
$ sudo systemctl reload apache2

Completar la instalación de WordPress a través de la interfaz web

12. La sección final demuestra cómo completar la instalación de WordPress usando el instalador web. Así que abre tu navegador y navega usando el nombre de dominio de tu sitio:

http://mysite.com.

Una vez que se cargue el instalador web de WordPress, elija el idioma que desea usar para la instalación y haga clic en Continuar.

13. A continuación, configure el título de su sitio, el nombre de usuario administrativo y la contraseña y un correo electrónico para administrar el contenido de su sitio. Luego haga clic en Instalar WordPress.

14. Una vez que se complete la instalación de WordPress, haga clic en Iniciar sesión para acceder a la página de inicio de sesión administrativo de su sitio.

15. Ahora inicie sesión en su nuevo sitio web de WordPress con sus credenciales administrativas (nombre de usuario y contraseña creados anteriormente) y comience a personalizar su sitio desde el Panel de control.

En este artículo, hemos explicado cómo instalar WordPress usando Apache como servidor web y MySQL como sistema de base de datos para servir sitios web PHP.

A continuación, el paso crucial es proteger su sitio de WordPress con SSL. Si ha implementado WordPress en un dominio real, puede proteger el sitio con el certificado Free Let's Encrypt. Si ha implementado WordPress localmente en un sitio web ficticio para pruebas o uso personal, le sugiero que utilice un certificado autofirmado.