Cómo Instalar WordPress en Linux

Cómo Instalar WordPress en Linux

El objetivo de esta entrada es mostrar cómo instalar WordPress en Linux, en cuestión de minutos. El proceso es exactamente igual tanto si estás trabajando con un servidor VPS en Internet, un servidor en la red local o simplemente quieres instalar WordPress en local, en tu propia máquina (incluso si el servidor es una máquina virtual). El sitio web será accesible mediante un dominio o subdominio propio.

Cómo Instalar WordPress en Linux

Partimos de un servidor Linux (en el ejemplo estoy usando un Debian 9.8) en el que tenemos privilegios de root.

En este ejemplo trabajaremos con estos datos que tú cambiarás por los tuyos propios:

  • El usuario con el que vamos a trabajar será chacho
  • Su directorio personal será, por lo tanto, /home/chacho/
  • Su directorio web estará en /home/chacho/public_html/
  • El sitio wordpress se alojará en /home/chacho/public_html/blog.midominio.com/
  • El sitio será accesible desde la dirección http://blog.midominio.com

Te recomiendo la entrada cómo simular dominios en local si quieres usar dominios que no sean localhost en tu propia máquina o red local y no supieras cómo configurarlos.

Si no quieres usar servidores virtuales ni dominios, sino una instalación local accesible sobre un sitio web ya existente, los pasos son muy similares. Te puedes saltar la configuración del servidor virtual, eligiendo los directorios web con los que ya estés trabajando.

Requisitos para llevar a cabo este tutorial

Se entiende que tienes acceso al servidor a través de consola, que te manejas con los comandos básicos de shell y que sabes editar archivos de texto con nano (o con vi, o con otro de tu elección).

Cómod Descargar WordPress para Linux

Vamos a descargar WordPress para Linux en español. Encontraremos la última versión en el sitio oficial, en la dirección https://es.wordpress.org/download/. Observa que la dirección de la web empieza por es, ya que queremos descargar WordPress en español. Si lo queremos en inglés tendríamos que entrar en https://wordpress.org.

En cualquier caso, a la hora de descargar WordPress veremos el botón grande de descarga, que enlaza al archivo .zip, y debajo un enlace a la versión del paquete .tar.gz.

descargar wordpress para linux en español
Página oficial para descargar WordPress (en español)

 

Como queremos WordPress para Linux descargaremos la versión .tar.gz, no la del paquete .zip (que sería más apropiado para entornos Windows). Sea cual sea la elección, en la consola del servidor  ordenaremos la descarga del archivo pegando o tecleando el enlace del paquete como opción del comando wget:

~$ wget https://es.wordpress.org/latest-es_ES.tar.gz

Preparando el directorio para el sitio

Una vez descargado el paquete de WordPress, tenemos que descomprimirlo. Elegiremos un directorio accesible vía web (por ejemplo, alguno creado en /var/www/html/) si va a formar parte de una web mayor, o crearemos un servidor virtual para tratarlo como un sitio totalmente independiente (que es lo más habitual).

En mi caso crearé un sitio nuevo en la carpeta web de mi usuario de trabajo (/home/chacho/public_html) en la máquina Linux. Descomprimimos el paquete de WordPress (adapta la ruta según donde vayas a tener el nuevo sitio):

~$ tar xzf latest-es_ES.tar.gz -C ~/public_html/

En este ejemplo, en ~/public_html/ se habrá creado un directorio llamado wordpress que renombraremos convenientemente. En mi caso suelo usar el mismo nombre que el dominio desde el que se accederá. Por supuesto, puede elegirse un nombre más sencillo, pero como tengo varias webs me ayuda a tener claro qué es cada cosa.

Cambiaremos el grupo de este directorio y todo su contenido al grupo con el que se ejecuta Apache (www-data), e igualmente daremos permisos de escritura a este grupo. Esto es porque WordPress (a través del servidor web) necesita escribir archivos de configuración, instalar plugins, subir contenidos, actualizarse a sí mismo, etc.

~$ mv ~/public_html/wordpress/ ~/public_html/blog.midominio.com
~$ sudo chown .www-data ~/public_html/blog.midominio.com/ -R
~$ chmod g+w ~/public_html/blog.midominio.com/ -R
~$

Cómo configurar MySQL para WordPress (crear la base de datos)

Necesitamos una base de datos para el sitio, un usuario con permisos sobre esa base y su correspondiente contraseña. Estos datos los proporcionaremos posteriormente durante el script web de instalación de WordPress.

Vamos a crear todo lo que necesitamos. Para ello usaremos el cliente de consola de MySQL accediendo con un usuario con permisos para crear bases de datos y otros usuarios (o el mismo root).

~$ mysql -u usuario -p
Enter password:
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 159
Server version: 10.1.26-MariaDB-0+deb9u1 Debian 9.1

Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.

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

MariaDB [(none)]> CREATE DATABASE wordpress CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
Query OK, 1 row affected (0.02 sec)

MariaDB [(none)]> CREATE USER 'wordpress'@'localhost' identified by 'password';
Query OK, 0 rows affected (0.01 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost';
Query OK, 0 rows affected (0.00 sec)

MariaDB [(none)]> exit
Bye
~$

Ya tenemos una base de datos llamada wordpress, que trabajará en formato UTF8 y Unicode. Y también tenemos un usuario wordpress con contraseña password que puede utilizar esta base de datos. Lógicamente, puedes usar los nombres que quieras para la base de datos, el usuario y la contraseña.

Anotamos estos datos, porque los necesitaremos más adelante.

Cómo activar un servidor virtual para WordPress

Como cada servidor virtual que maneja Apache necesita su propio archivo de configuración, crearemos uno para el nuevo servidor virtual de nuestro sitio WordPress, por ejemplo, /etc/apache2/sites-available/blog.midominio.com.conf:

~$ sudo nano /etc/apache2/sites-available/blog.midominio.com.conf

En algunas configuraciones de Apache, el archivo puede tener cualquier nombre, en las más recientes (2.4.x) tiene que terminar con la extensión .conf.

El contenido mínimo del archivo de configuración sería:

<VirtualHost *:80>
	ServerName blog.midominio.com
	ServerAdmin chacho@localhost
	DocumentRoot /home/chacho/public_html/blog.midominio.com

	<Directory /home/chacho/public_html/blog.midominio.com>
		Options -Indexes
		AllowOverride all
		Require all granted
	</Directory>

	ErrorLog ${APACHE_LOG_DIR}/blog.midominio.com-error.log
	CustomLog ${APACHE_LOG_DIR}/blog.midominio.com-access.log combined
	LogLevel warn
</VirtualHost>

Si tienes certificados SSL para el dominio que estás configurando, entonces añade también a continuación un bloque para el protocolo HTTPS:

<VirtualHost *:443>
        ServerName blog.midominio.com
        ServerAdmin chacho@localhost
        DocumentRoot /home/chacho/public_html/blog.midominio.com

        <Directory /home/chacho/public_html/blog.midominio.com>
                Options -Indexes
                AllowOverride all
                Require all granted
        </Directory>

        SSLEngine on
        SSLCertificateFile /etc/letsencrypt/live/blog.midominio.com/cert.pem
        SSLCertificateKeyFile /etc/letsencrypt/live/blog.midominio.com/privkey.pem
        SSLCertificateChainFile /etc/letsencrypt/live/blog.midominio.com/chain.pem

        LogLevel info ssl:warn
        ErrorLog ${APACHE_LOG_DIR}/blog.midominio.com-error.log
        CustomLog ${APACHE_LOG_DIR}/blog.midominio.com-access.log combined
</VirtualHost>

No olvides que el módulo SSL del servidor web debe estar activado para que funcione la configuración SSL.

Tras crear y guardar este archivo de configuración, activamos el nuevo servidor virtual y recargamos la configuración de Apache, para que sea accesible desde cualquier navegador:

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

~$ sudo service apache2 reload
~$

Cómo instalar WordPress en Linux desde el navegador

Para terminar de instalar WordPress en Linux entraremos en nuestro nuevo sitio con el navegador para ejecutar el script de instalación inicial.  La URL que usaremos será la dirección que hemos configurado para el servidor, en el ejemplo http://blog.midominio.com.

Cómo conectar MySQL con WordPress

El script web de instalación nos informa de que para conectar MysQL con WordPress vamos a necesitar los datos de la base de datos MySQL que creamos anteriormente (o los que nos hayan proporcionado).

como instalar wordpress en linux
Pantalla inicial de la instalación de WordPress desde el navegador

 

La primera pantalla del script de instalación nos avisa de que va a solicitarnos los datos de conexión a la base de datos MySQL con la que trabajará WordPress. Pinchamos en «¡Vamos a ello!»

Formulario de datos de conexión a MySQL
Formulario de datos de conexión a MySQL

 

Proporcionamos los datos de conexión de MySQL:

  • Nombre de la base de datos: El nombre de la base de datos usará WordPress para el nuevo sitio (lo creamos anteriormente).
  • Nombre de usuario: El usuario con privilegios suficientes sobre esa base de datos (también creado antes).
  • Contraseña: La contraseña para el usuario (creada a la vez que el usuario).
  • Servidor de la base de datos: Dejaremos localhost si MySQL y Apache corren sobre la misma máquina, en caso contrario indicaremos el servidor en que trabaja MySQL.
  • Prefijo de tabla: Si la base de datos que usaremos es exclusiva para este sitio WordPress, dejaremos el valor por defecto, pero si hay varios sitios WordPress compartiéndola, entonces tendremos que especificar un prefijo exclusivo para este nuevo sitio.

Al terminar, pinchamos en «Enviar».

Pantalla de conexión a MySQL realizada con éxito
Conexión a MySQL realizada con éxito, listos para instalar

 

Esta pantalla es la confirmación de que WordPress ha podido conectar con la base de datos, crear las tablas necesarias y se dipone a preparar los archivos del directorio web para empezar a trabajar. Pinchamos en «Ejecutar la instalación».

Credenciales de acceso e identidad del sitio

Pantalla de registro de administrador del sitio WordPress
Formulario de registro de credenciales del administrador y datos de identidad del sitio

 

Ya está instalado WordPress, pero debemos cumplimentar aún los datos básicos de nuestro sitio:

  • Título del sitio: El nombre del sitio, el que aparecerá constantemente en todas las páginas.
  • Nombre de usuario: El nombre del administrador del sitio, con el que acceder, hacer configuraciones, administrar temas, plugins, usuarios… e incluso publicar.
  • Contraseña: La contraseña del usuario administrador.
  • Tu correo electrónico: Una dirección de correo electrónico donde el sitio enviará notificaciones importantes de actividad e incidencias.
  • Visibilidad en los motores de búsqueda: Dejándolo sin marcar, el sitio es indexable por los buscadores; activándolo le estaremos diciendo a los robots y arañas que el sitio no debe ser indexado (porque aún lo tengamos en pruebas o no queramos que sea visible).

Pinchamos en «Instalar WordPress».

Pantalla de instalación con éxito de WordPress
Instalación realizada con éxito

 

Si llegamos a esta pantalla, la instalación ha finalizado correctamente. Se nos recuerda cuál es el usuario administrador con el que debemos acceder por primera vez. Pinchamos en «Acceder».

Accediendo a nuestro sitio WordPress por primera vez

Pantalla de login de WordPress
Identificación de usuario para acceder al sitio por primera vez

 

Por fin podemos entrar por primera vez a nuestrio nuevo sitio WordPress,  y sería interesante agregar esta dirección a los marcadores de nuestro navegador. Introducimos usuario, contraseña, y marcamos la casilla de «Recuérdame» si lo consideramos oportuno. Pinchamos en «Acceder» y…

escritorio de wordpress en linux
Escritorio de WordPress, aquí tienes muchas cosas con las que jugar

 

¡Por fin podemos trabajar en nuestro sitio WordPress! Pero antes de empezar a instalar nada, vamos a facilitar la instalación de temas, plugins, actualizaciones, etc.

Cómo actualizar WordPress sin FTP en Linux

Este paso es opcional al instalar WordPress en Linux, pero es más que recomendable, ya que nos va a servir para actualizar WordPress sin FTP a nuevas versiones, instalar plugins y temas, etc.

Tal y como está configurado por defecto, cada vez que queramos instalar temas o plugins se nos pedirán credenciales de acceso por FTP. Como es bastante inusual tener instalado el servicio de FTP, vamos a configurar el modo en que WordPress podrá realizar estas tareas directamente, sin FTP. Para ello, editaremos el archivo wp-config.php en la raíz del sitio. Este archivo, creado durante la instalación, pertenece a Apache (usuario y grupo www-data), por lo que o bien cambiamos el propietario o bien editamos como superusuario:

~$ sudo nano public_html/blog.midominio.com/wp-config.php

Y al final del fichero añadimos un par de líneas como estas:

/** Permite a WordPress instalar y actualizar sin necesidad de FTP **/
define('FS_METHOD', 'direct');

Y ahora sí, ya podemos personalizar y actualizar WordPress sin FTP, ya sea con temas, plugins, etc. ¡Pero eso es otra historia!

Conclusión final

Ahora que ya sabes cómo instalar WordPress en Linux habrás visto, si tenías abierta una consola del servidor, que todo el proceso lleva pocos minutos. Y podrás hacer tantas instalaciones distintas como quieras (cada una necesita su propio directorio de trabajo y su propia url), lo que es ideal para llevar varios blogs distintos, crear sitios de pruebas donde experimentar temas y plugins, etc.

Si has detectado cualquier error en este artículo, o tienes alguna duda, o sugerencia de mejora de este artículo, o te gustaría uno nuevo sobre temas relacionados, házmelo saber en los comentarios.

Y si este artículo te ha llegado a servir, ¡puedes invitarme a un café!

1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (6 votos, promedio: 5,00 de 5)
Cargando…
Cerrar menú

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información

ACEPTAR
Aviso de cookies