Cómo instalar WordPress en Debian 10 Buster

En esta entrada veremos cómo instalar WordPress en Debian 10 Buster paso a paso para poder crear fácilmente potentes sitios web con este CMS. Al final de esta guía habrás instalado WordPress en tu servidor o VPS Debian y estarás listo para empezar a crear contenido.

Antes de instalar WordPress en Debian 10 Buster

Si vas a seguir esta guía de instalación de WordPress en el nuevo Debian 10 Buster, necesitas cumplir estos requisitos:

  • Una máquina Debian 10 Buster actualizada.
  • Una pila LAMP o similar, es decir, servidor web con PHP y soporte de bases de datos MySQL o MariaDB.
  • Acceso a consola como root o usuario con permisos de sudo.
  • Manejo básico de un editor de texto, como nano o vi.
  • Conexión a Internet.

En esta guía usamos Apache 2.4 y MariaDB 10.3. Si necesitas ayuda sobre este tipo de configuraciones, puedes consultar la guía de instalación LAMP en Debian 10 Buster.

Cómo descargar WordPress para Debian 10 Buster

En primer lugar lo que haremos será descargar WordPress para Debian 10. WordPress existe como paquete de la distribución Debian 10 Buster, pero en el momento de escribir esta guía la versión disponible es la 5.0, mientras que la última versión disponible desde WordPress.org pertenece a la rama 5.8. Además, puede ser más interesante controlar todos los aspectos de la instalación y configuración de WordPress. Por todo ello, visitaremos la zona de descargas de la web oficial de WordPress en español para descargar la última versión disponible.

como descargar wordpress para debian 10 buster

El botón que aparece resaltado corresponde al paquete con formato .zip, pero el que nos interesa (o es más recomendable) es el enlace que hay justo debajo, y que enlaza al paquete en versión .tar.gz. Estos enlaces no cambian nunca y apuntan siempre a la última versión de WordPress.

Si estás navegando en la máquina Debian 10 sobre la que harás la instalación puedes descargar directamente desde el navegador. En mi caso, copiaré la URL para descargar el paquete desde consola con el comando wget:

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

Preparación del directorio para WordPress

WordPress puede ser instalado como un sitio independiente o como parte de otro sitio. Podrías configurar un servidor virtual exclusivo para un sitio independiente de WordPress, o incluso varios servidores con distintas instalaciones y sitios. En este ejemplo, WordPress será parte del servidor por defecto de la máquina Debian 10, cuya web reside en /var/www/html/.

Con el paquete ya descargado, procedemos a descomprimirlo directamente en la ubicación donde residirá el nuevo sitio web, sobre /var/www/html/. Como este directorio pertenece a root usaremos sudo:

~$ sudo tar xf latest-es_ES.tar.gz -C /var/www/html

Ya tenemos WordPress descomprimido bajo la carpeta /var/www/html/wordpress/.

El siguiente paso será cambiar los permisos de esta carpeta y su contenido, especificando el usuario y grupo con el que corre el servicio web (www-data en el caso de Apache), ya que el servidor web necesitará poder modificar y crear contenido en la carpeta de WordPress:

~$ sudo chown www-data:www-data /var/www/html/wordpress/ -R

Preparación de la base de datos para WordPress en Debian 10

WordPress necesita una base de datos propia y un usuario capaz de manejarla, por lo que debemos prepararlos en el sistema de bases de datos que tengamos instalado en nuestra máquina Debian 10.

Aunque podríamos usar cualquier usuario administrador desde WordPress, por seguridad crearemos uno nuevo limitado sólo a la nueva base de datos de WordPress.

En primer lugar conectamos al sistema de bases de datos con el cliente de consola con un usuario con suficientes privilegios como para crear y administrar bases de datos y usuarios. Si no tienes ninguno propio, puedes usar root.

En el caso de que root use autenticación por sockets de Unix, conectamos con sudo:

~$ sudo mysql

Si root usa el sistema tradicional por contraseña conectaremos así:

~$ mysql -u root -p

En cualquier caso, una vez conectados al servidor de bases de datos, crearemos la base para WordPress:

> create database wordpress charset utf8mb4 collate utf8mb4_unicode_ci;

Ahora creamos el nuevo usuario que usará WordPress para manejar la nueva base. Si usas MariaDB o MySQL 5.x hazlo así:

> create user wordpress@localhost identified by 'XXXXXXXX';

En cambio, si usas MySQL 8 o superior debes asegurarte de que el usuario utilice un plugin de autenticación compatible:

> create user wordpress@localhost identified with mysql_native_password by 'XXXXXXXX';

Concedemos permisos al nuevo usuario sobre la base de datos:

> grant all privileges on wordpress.* to wordpress@localhost;

Sólo queda recargar la tabla de permisos y salir del cliente mysql:

> flush privileges;
> exit

Módulos de PHP requeridos por WordPress en Debian 10

No basta con la instalación básica de PHP para instalar WordPress, ya que este recomienda y exige algunos módulos para poder funcionar correctamente y con el mayor rendimiento posible. Los módulos de los que estamos hablando son bcmath, curl, imagick, gd, mbstring, xml y zip. Todos estos módulos están disponibles en los repositorios de Debian 10, por lo que instalarlos será sencillo.

Previamente actualizaremos las listas de paquetes de los repositorios:

~$ sudo apt update

Ahora ya podemos instalar los módulos con apt, en el caso de usar la versión de PHP nativa de Debian 10:

~$ sudo apt -y install php-bcmath php-curl php-imagick php-gd php-mbstring php-xml php-zip

Como WordPress recomienda el uso de la versión 7.4 como mínimo, si tienes instalada esta o alguna superior desde un repositorio alternativo habrá que indicar el número de versión en el nombre de los paquetes. Por ejemplo, para la citada versión 7.4:

~$ sudo apt -y install php7.4-bcmath php7.4-curl php7.4-imagick php7.4-gd php7.4-mbstring php7.4-xml php7.4-zip

Para otras versiones sustituye en el comando anterior la partícula php7.4- por lo que corresponda.

Descargados e instalados los paquetes (junto a sus dependencias) será necesario recargar la configuración del servicio web si PHP funciona como módulo, o el servicio PHP si funciona como FastCGI. En este ejemplo PHP es un módulo de Apache, así que recargamos la configuración de este:

~$ sudo systemctl reload apache2

IMPORTANTE: Si alguna vez al instalar un plugin de WordPress se requiere la presencia de algún módulo concreto de PHP, deberás hacer este mismo proceso, es decir, instalar el módulo con apt y recargar la configuración.

Ya tenemos todo listo para comenzar con la instalación vía web.

Preparación del servidor web

En este tutorial estamos usando Apache como servidor web y hemos decidido instalar WordPress como parte de la página por defecto de Debian 10. WordPress hace uso del módulo Rewrite de Apache a través de un archivo .htaccess en la carpeta de instalación. Esto tiene dos implicaciones del servidor web: por un lado debería cargar el módulo Rewrite y por otro permitir la configuración en tiempo de ejecución a través de archivos .htaccess.

Cargaremos el módulo Rewrite de Apache con el comando a2enmod:

~$ sudo a2enmod rewrite

El uso de archivos .htaccess no está permitido en la carpeta de instalación actual de WordPress, porque cuelga de la ruta /var/www/. Esta ruta, en el archivo de configuración de Apache, tiene desactivado expresamente el uso de archivos .htaccess, para sí y para su contenido.

Lo que haremos será configurar específicamente la ruta /var/www/html/wordpress/ para que sí permita el uso de archivos .htaccess. Editamos un nuevo archivo de configuración adicional de Apache:

~$ sudo nano /etc/apache2/conf-available/wordpress.conf

El contenido será este bloque Directory:

<Directory /var/www/html/wordpress>
        AllowOverride all
</Directory>

Al otorgar un valor all a la directiva AllowOverride permitimos el uso de archivos .htaccess en el directorio /var/www/html/wordpress/ y sus subdirectorios, sin modificar la configuración de /var/www/ o /var/www/html/.

Guardados los cambios, activamos la nueva configuración:

~$ sudo a2enconf wordpress

En el caso de configurar un servidor virtual para WordPress, deberías seguir un procedimiento similar con el directorio de instalación de WordPress, pero en este caso en el propio archivo de configuración del servidor virtual.

Reiniciamos el servidor web para que cargue las nuevas configuraciones:

~$ sudo systemctl restart apache2

Cómo instalar WordPress en Debian 10 vía web

Con todos los requisitos necesarios preparados es hora de iniciar la instalación vía web. Para ello usaremos un navegador indicando como URL la dirección IP, nombre de máquina o dominio del servidor Debian añadiendo la ruta /wordpress.

En este ejemplo, la máquina Debian 10 es accesible a través del nombre de dominio debian10.local.lan, por lo que http://debian10.local.lan/wordpress será la URL que utilicemos:

como instalar wordpress en debian 10 buster

Inmediatamente accedemos al instalador web de WordPress. Para empezar el proceso pulsaremos el botón «¡Vamos a ello!«.

Tendremos que proporcionar todos los datos de conexión al servidor de bases de datos, indicando la base, el usuario y la contraseña que hemos creado anteriormente:

instalar wordpress en debian 10 buster

El servidor y el prefijo se dejan por defecto (el prefijo lo podrías cambiar, si tienes algún motivo).

Al enviar toda esta información, el instalador comprueba la conectividad con el servidor de base de datos:

instalación de wordpress en debian 10 buster

Y todo debería ir bien si seguiste correctamente los pasos previos. Es el momento de que WordPress comience a instalarse, pulsando «Ejecutar la instalación«.

Enseguida se nos pedirán otros datos, en esta ocasión información sobre el nuevo sitio de WordPress que estamos instalando:

instalacion de wordpress en debian 10 buster

Tendremos que facilitar:

  • El título del nuevo sitio web.
  • El nombre de nuestro usuario administrador del sitio WordPress.
  • La contraseña para este usuario.
  • La dirección de correo-e que WordPress debe utilizar para enviar cierta información cuando sea necesario.
  • Si queremos permitir que el nuevo sitio se indexe o no en los buscadores.

Tras rellenar este formulario, pulsamos «Instalar WordPress» y en unos instantes la instalación habrá terminado:

Se nos recuerda que debemos usar el usuario y la contraseña que acabamos de crear para manejar WordPress, así que podemos pulsar «Acceder» para iniciar sesión:

wordpress para debian 10 buster

Introducimos las credenciales y pulsamos «Acceder«, con lo que entraremos directamente en el Escritorio de WordPress, donde ya podemos empezar a trabajar.

wordpress en debian 10 buster

Actualizaciones de WordPress sin FTP en Debian 10

Si quieres empezar a instalar temas y plugins en tu nuevo sitio WordPress, la configuración por defecto permitirá las actualizaciones sin usar el servicio FTP, gracias a los permisos que otorgamos al servicio web sobre los archivos y carpetas de WordPress.

Por ejemplo, la versión que acabamos de instalar muestra algunas actualizaciones disponibles para plugins y temas, que podemos examinar entrando en la página de actualizaciones de WordPress:

Seleccionamos los componentes que nos interesen y podremos actualizarlos directamente. Esto funcionará igualmente para instalar temas y plugins desde el buscador del propio WordPress.

Conclusión

Ya sabes cómo instalar WordPress en Debian 10 paso a paso. Ante ti tienes el CMS más usado en Internet, listo para ser personalizado con temas, complementos y toda clase de contenido. Sólo tu creatividad será el límite de lo que puedes ofrecer con WordPress.

Si tienes alguna duda, pregunta, sugerencia o notificación de error, puedes dejarme un comentario.

Y si esta pequeña guía de WordPress en Debian 10 te ha ahorrado quebraderos de cabeza y quieres agradecérmelo, puedes hacerlo dejando una propina de 1 $ con la calderilla de PayPal que nunca usas:

O, si te sientes especialmente generoso, puedes invitarme a un café:

¡Gracias!

21 comentarios en «Cómo instalar WordPress en Debian 10 Buster»

  1. ¡¡Hola, Chacho!!
    Es de no creer esta castaña de WP. No puedo entender cómo hay tanto adicto. Me he pasado dos o tres días hasta darle con el martillo a este clavo. Y gracias a tu sitio, porque el soporte de la WP.org duerme… Tuve que lanzar otra instancia de Debian porque por alguna razón (está en la nube de AWS… 🙁 ) se me pisaba algo que no dejaba ejecutar bien el PHP 7.4. No había errores de Apache ni nada del webserver en sí, el tail -f no tiró un solo error. Todo cambió cuando con el Debian 10 limpio le corrí el PHP 7.3 del repositorio oficial. Aunque te comento que si a esta chapuza de WP lo tratas de instalar con el wizard que te pide los datos de la DB no funciona bien tampoco. Me daba errores de conexión con la base de datos, y se resolvieron después de un par de nuevas instalaciones poniendo el wp-config.php a mano y con los datos de la db. Así salió sin problemas. Y ahora puedo editar y publicar etc.
    Gracias por tu ayuda y muy completos tutos. De verdad sé que es un currito denso estar actualizando y no perdiendo detalles, pero lo haces como un campeón.
    Un gusto, saludos cordiales.

    Responder
    • ¡Estupendo, Ricardo! No he probado nunca AWS, yo suelo trabajar con Digital Ocean y configurar LAMP con cualquier versión de PHP es tan sencillo como hacerlo sobre una máquina virtual en casa (tal como desarrollo en los correspondientes tutoriales). Puede ser problemático instalar una versión de PHP alternativa cuando ya está instalada la nativa de Debian 10, porque hay que desactivar previamente el módulo que tiene cargado el servicio web para poder activar el nuevo módulo. En lo que se refiere a WordPress, con el sistema preparado, se instala en menos de dos minutos sobre Debian 10, y está bastante bien para crear contenido de forma rápida, sobre todo si no se tienen conocimientos de programación y diseño web.

      Responder
  2. ¡¡Hola, eres un campeón!! 💪
    ¿¿Sabes los sitios de copy-paste que me he fumado?? 🤦
    ¡¡Tus explicaciones y detalles son únicos!!!
    ¡¡Y me darás ayuda seguro!!
    Cuando quiero editar con el block de WP no me actualiza, ni cambia a borrador, ni publica, ni hace review (queda cargando y nada…)
    Ya van como cinco WP que instalo y crei que era un problema de la API REST pero ya no… No puede ser que con una Mariadb nueva (aunque con el mismo user y con privilegios all y grant) no corra ese editor… ¿¿Qué demonios puede ser?? Supongo que algo en el servidor Debian 10, aunque tiene todo actualizado y está con el LAMP completo, el firewall desactivado…
    ¿¿Se te ocurre algo?? Gracias, confío en que aquí lo resuelvo 👏👏👏

    Responder
    • ¡Hola, Ricardo! Yo miraría el registro del servicio web tras realizar la operación, cuando WordPress se queda «colgado», seguramente arroje alguna pista. Te sugiero usar «tail -f» en una segunda consola para vigilar el registro.
      Por cierto, aquí de copiar y pegar nada de nada, sabré yo el curro que me cuesta redactar y actualizar…

      Responder
    • Sobre la instalación de WordPress en tu máquina Debian 10 haz lo siguiente:

      • Edita el archivo de configuración del sitio web por defecto, /etc/apache2/sites-available/000-default.conf
      • Cambia el valor de DocumentRoot por /var/www/html/wordpress
      • Incorpora a continuación el bloque Directory de la configuración del tutorial
      • Guarda los cambios
      • Elimina el archivo de configuración adicional, ya que no hará falta y es redundante
      • Recarga la configuración del servicio web
      • Elimina el directorio de WordPress y vuelve a descomprimir el paquete en la misma ruta, dándole los permisos necesarios
      • Elimina la base de datos de WordPress y vuelve a crearla
      • Lanza el instalador web con la URL midominio.com
      Responder
  3. Hola. En mi caso para el tema de las actualizaciones, ¿cómo hago? Mi acceso a Internet es a través de un proxy.

    Ya tengo el WordPress instalado y funcionando.

    Saludos.

    Responder
    • Hola, Yoe. Si no has tenido problemas para seguir el tutorial, no creo que los tengas con las actualizaciones de WordPress desde tu máquina Debian 10. De hecho, si puedes instalar algún tema o plugin entonces las actualizaciones funcionarán correctamente.

      Responder
  4. Muy buena guía pero tengo un problema. Iba a instalar un tema pero me pide usuario y pass de FTP y hostname. Juraría que hice todos los pasos tal cual lo ponías ahí, por lo que entiendo que no me tendría que pedir nada de esto. Si me pudieras ayudar te lo agradezco.

    Responder
    • Hola, Raúl. Parece un tema de permisos. Revisa que has aplicado correctamente el cambio de usuario y grupo de los directorios y archivos de WordPress.

      Responder
      • ¡Gracias! Le echaré un ojo aunque por ahora no he encontrado que falten permisos. De todas formas de inicio hasta que ya lo arregle me he ido a la opción rápida: Descargué un tema y lo puse en la carpeta y ya está. Cutre pero efectivo.

        Responder
  5. ¡Hola! Sabes que tengo un problema, al intentar abrir WordPress desde el navegador para instalarlo me abre una página en blanco y no abre WordPress. La página por defecto de Apache la veo bien. ¿Sabes por qué puede ser?

    Responder
    • Hasta donde yo sé, WordPress sólo trabaja con MariaDB/MySQL. En cierta ocasión leí algo sobre que terceros habían desarrollado un módulo capaz de hacer trabajar sobre PostgreSQL pero era inestable y provocaba toda clase de problemas con actualizaciones, plugins, etc.

      Responder

Deja un comentario

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