Guía de despliegue

WordPress Multisite en VPS: gestiona N sitios en una instalación

Desplegar en un VPS Cloud →

Tutorial

WordPress Multisite en VPS: gestiona N sitios en una instalación

Autoalojamiento10 min de lectura6 pasos

Cuando la cartera de sitios de clientes supera la decena, gestionar cada instancia por separado se convierte en un cuello de botella: tantos paneles de control, tantos ciclos de actualización, tantos riesgos de quedarse atrás. WordPress Multisite permite federar estos sitios bajo una sola instalación, manteniendo subdominios independientes. En un VPS, el aislamiento de red y las copias de seguridad automáticas contienen los riesgos que plantea este modelo de alojamiento concentrado.

Contenido· Por qué Multisite en lugar de N instancias WordPress separadas1/9
  1. 01Por qué Multisite en lugar de N instancias WordPress separadas
  2. 02Lo que ganas en la práctica
  3. 03Requisitos previos: recursos VPS recomendados para 5 a 15 sitios activos
  4. 04Activar WordPress Multisite y configurar Nginx para subdominios
  5. 05Multisite vs instancias WordPress separadas: tabla comparativa
  6. 06Seguridad de Multisite en VPS: contener el impacto de una vulnerabilidad
  7. 07Solución de problemas: tres errores frecuentes en una red WordPress Multisite
  8. 08Migrar sitios existentes a una red Multisite
  9. 09Puesta en producción: pasos de validación antes de abrir a tus clientes

Por qué Multisite en lugar de N instancias WordPress separadas

Una agencia que gestiona quince sitios WordPress en quince instalaciones distintas se enfrenta a un problema de escala: quince paneles de control que supervisar, quince ciclos de actualización que coordinar, quince configuraciones de servidor web que mantener. Si un plugin crítico publica un parche de seguridad, hay que aplicarlo quince veces — una por una, manualmente o mediante herramientas de orquestación externas.

WordPress Multisite resuelve este problema de raíz. Una sola instalación WordPress ejecuta una red de sitios (network). Cada cliente tiene su propio subdominio (client1.example.com, client2.example.com), su propio contenido, sus propios usuarios y su propia configuración de tema. Pero los archivos del núcleo de WordPress, los plugins y los temas se comparten y gestionan centralmente por el superadministrador de la red.

En un VPS dedicado, este modelo tiene pleno sentido: el aislamiento de red contiene la superficie de ataque y mantienes el control completo sobre PHP, MariaDB y Nginx sin pasar por un panel de control de terceros.

Lo que ganas en la práctica

  • Una sola actualización del núcleo de WordPress, plugins y temas de red — aplicada simultáneamente a todos los sitios de la cartera.
  • Un solo punto de entrada de administración: el superadministrador de red supervisa todos los sitios desde /wp-admin/network/.
  • Almacenamiento compartido de medios opcional por sitio — agrupa recursos o aisla según tus contratos con clientes.
  • Ahorro de recursos del servidor: un solo proceso PHP-FPM, una sola instancia de caché de objetos, una sola conexión MariaDB que ajustar.
  • Incorporación más rápida: crear un subsitio consiste en rellenar un formulario en la red, no en aprovisionar un servidor.
  • Copias de seguridad centralizadas: un solo volcado MariaDB cubre todos los sitios, programable con una sola regla cron.

Requisitos previos: recursos VPS recomendados para 5 a 15 sitios activos

Los recursos necesarios dependen del tráfico y la complejidad de los sitios — no del número de instalaciones. Para una red de 5 a 15 sitios WordPress activos (sitios escaparate o blogs con tráfico moderado, sin WooCommerce intensivo), la recomendación editorial basada en la documentación de WordPress y Nginx/MariaDB es:

- CPU: 2 vCPU como mínimo; 4 vCPU en cuanto combinas caché de páginas con tráfico simultáneo.
- RAM: 4 GB como base; 8 GB recomendados si activas una caché de objetos Redis junto con PHP-FPM.
- Almacenamiento: SSD NVMe, 40 GB mínimo para archivos WordPress + medios + logs de MariaDB; ajustar según el volumen de medios de los clientes.
- PHP: PHP 8.2 o 8.3 (PHP 8.1 llegó al final de soporte activo a finales de 2024).
- MariaDB: 10.6 LTS o 10.11 LTS.
- Servidor web: Nginx con bloques server por subdominio y DNS comodín.

Si tu cartera supera los 15 sitios o incluye tiendas WooCommerce, considera dividir la red Multisite en dos particiones o empezar con 8 GB / 4 vCPU.

Activar WordPress Multisite y configurar Nginx para subdominios

  1. Configurar el DNS comodín

    Antes de hacer ningún cambio en WordPress, añade un registro DNS comodín en tu dominio principal:

    *.example.com  A  <IP_DE_TU_VPS>

    Esta entrada dirige todos los subdominios a tu VPS. Sin ella, los subsitios de la red permanecerán inaccesibles desde el navegador, aunque WordPress los cree correctamente.

  2. Permitir el modo red en wp-config.php

    Edita wp-config.php en la raíz de tu instalación WordPress y añade la siguiente línea antes de /* That's all, stop editing! */:

    define( 'WP_ALLOW_MULTISITE', true );

    Esta constante es la condición documentada en la documentación oficial de WordPress para activar el asistente de instalación de red.

  3. Crear la red desde el panel de administración

    Inicia sesión en /wp-admin/, ve a Herramientas → Instalación de la red. Elige Subdominios (DNS comodín obligatorio). Introduce el título de la red y el correo electrónico del administrador, luego haz clic en Instalar.

    WordPress te proporcionará dos bloques de código para insertar en wp-config.php y en .htaccess (Apache) o en tu archivo de configuración Nginx. Cópialos exactamente.

  4. Adaptar la configuración de Nginx para subdominios comodín

    En Nginx, el bloque .htaccess proporcionado por WordPress no se lee. Reemplázalo con un bloque server dedicado. Esta es la configuración mínima para una red de subdominios:

    server {
        listen 80;
        server_name example.com *.example.com;
    
        root /var/www/wordpress;
        index index.php;
    
        # Multisite subdomain rewrite
        if (!-e $request_filename) {
            rewrite /wp-admin$ $scheme://$host/wp-admin/ permanent;
            rewrite ^(/[^/]+)?(/wp-.*) $2 last;
            rewrite ^(/[^/]+)?(/.*\.php) $2 last;
        }
    
        location / {
            try_files $uri $uri/ /index.php?$args;
        }
    
        location ~ \.php$ {
            fastcgi_pass unix:/run/php/php8.3-fpm.sock;
            fastcgi_index index.php;
            include fastcgi_params;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        }
    }

    Recarga Nginx: systemctl reload nginx. Luego pasa a HTTPS generando un certificado comodín con Certbot usando el desafío DNS-01 — un certificado SAN *.example.com cubre todos los subsitios de la red.

  5. Finalizar la configuración de WordPress Multisite en wp-config.php

    Añade las constantes proporcionadas por el asistente a wp-config.php (adapta los valores a tu instalación):

    define( 'MULTISITE', true );
    define( 'SUBDOMAIN_INSTALL', true );
    define( 'DOMAIN_CURRENT_SITE', 'example.com' );
    define( 'PATH_CURRENT_SITE', '/' );
    define( 'SITE_ID_CURRENT_SITE', 1 );
    define( 'BLOG_ID_CURRENT_SITE', 1 );

    Cierra sesión y vuelve a iniciarla. El panel de control muestra ahora el menú Red en la barra de administración. Desde Red → Sitios → Añadir nuevo, crea tu primer subsitio de cliente: client1.example.com.

  6. Activar plugins de red y asignar temas

    En Red → Plugins, activa los plugins para toda la red (Activar en la red) o deja que los administradores de los subsitios los activen por su cuenta. Los temas funcionan igual: el superadministrador los pone a disposición y cada subsitio elige el suyo.

    Nota importante: algunos plugins no son compatibles con el modo red. Verifica la compatibilidad en la documentación del plugin antes de activarlo en la red — un plugin incompatible puede bloquear el panel de control de todos los subsitios simultáneamente.

Multisite vs instancias WordPress separadas: tabla comparativa

Desplace la tabla

CriterioWordPress MultisiteInstancias separadas
Actualización del núcleo WordPress1 operación para N sitiosN operaciones manuales
Actualización de un plugin1 operación de redN operaciones, riesgo de desincronización
Aislamiento de datos del clienteParcial (misma base MariaDB, prefijos distintos)Total (bases de datos distintas, procesos PHP distintos)
Almacenamiento de mediosCompartido por defecto, aislable con pluginAislado de forma nativa
Recursos del servidorCompartidos — ahorro de RAM y CPUAditivos — cada instancia consume su parte
Plugin incompatible con la redPotencialmente bloquea todos los sitiosAfecta solo a una instancia
Incorporar un nuevo sitioFormulario en la red — segundosAprovisionamiento completo — minutos a horas
Certificado SSL comodín1 certificado `*.example.com`1 certificado por dominio de cliente

Seguridad de Multisite en VPS: contener el impacto de una vulnerabilidad

La objeción más común sobre WordPress Multisite es válida: si un plugin vulnerable es comprometido, la superficie de ataque potencial cubre toda la red, no solo un sitio. En un VPS dedicado, varias medidas contienen este impacto:

Copias de seguridad diarias automatizadas. Un volcado MariaDB programado cada noche (cron + mysqldump o mariabackup) te da un punto de restauración reciente para cada subsitio. Almacena los volcados fuera del VPS — en un bucket compatible con S3 o en un volumen remoto.

Firewall de aplicaciones. Un WAF Nginx (ModSecurity o reglas OWASP) filtra las solicitudes maliciosas antes de que lleguen a PHP. Combínalo con fail2ban para bloquear las IPs que intenten fuerza bruta en /wp-login.php.

Actualizaciones sin demora. La fortaleza de Multisite — una actualización para toda la cartera — es también tu mejor defensa: aplica los parches de seguridad de WordPress y los plugins el día de su publicación. Sin Multisite, el retraso en actualizar una instancia olvidada es la vulnerabilidad más explotada.

Superadmin con acceso limitado. La cuenta de superadministrador de la red tiene derechos sobre todos los sitios. Usa autenticación de dos factores en esta cuenta y crea cuentas de administrador de subsitio separadas para cada cliente.

Solución de problemas: tres errores frecuentes en una red WordPress Multisite

1. Plugin reportado como «incompatible con el modo red».
Algunos plugins comprueban explícitamente si WordPress está funcionando en modo Multisite y se niegan a activarse en la red. La causa suele ser el uso de $wpdb->blogid u opciones almacenadas de forma incompatible con las tablas prefijadas de cada subsitio. Solución: revisa los issues de GitHub del plugin, busca una alternativa compatible, o activa el plugin solo en los subsitios que lo necesiten (si el plugin lo permite) en lugar de a nivel de red.

2. Página de administración de red inaccesible (/wp-admin/network/ redirige al panel de control estándar).
El superadmin no es el mismo usuario que el administrador del sitio principal. Al crear la red, WordPress añade un indicador super_admin al usuario activo. Si creaste la red con una cuenta y luego inicias sesión con otra, esa segunda cuenta no verá el menú de red. Comprueba en MariaDB:

SELECT meta_value FROM wp_usermeta
WHERE meta_key = 'wp_user_level'
AND user_id = <ID_DE_TU_CUENTA>;

Para elevar a un usuario a superadmin: usa la función grant_super_admin( $user_id ) desde un archivo en mu-plugins.

3. Subdominios inaccesibles: el DNS comodín no se propaga inmediatamente.
Después de añadir *.example.com A <IP>, el TTL del registro determina el tiempo de propagación. Durante este período, los sitios creados en la red devuelven un error DNS en el navegador — WordPress los ha creado correctamente, pero el resolvedor todavía no conoce el subdominio. Si trabajas localmente con un VPS de desarrollo, añade una entrada en /etc/hosts en tu equipo para cada subdominio que quieras probar: <IP_VPS> client1.example.com.

Un cuarto caso se produce con configuraciones mixtas www / sin www: si tanto example.com como www.example.com apuntan al VPS, asegúrate de que DOMAIN_CURRENT_SITE en wp-config.php coincida exactamente con el dominio principal sin el prefijo www, y que Nginx redirija la forma www a la forma canónica antes de pasar la solicitud a WordPress.

Migrar sitios existentes a una red Multisite

Si ya gestionas sitios WordPress separados y quieres consolidarlos en una red Multisite, el plugin WordPress Importer (plugin oficial) exporta contenidos, comentarios y usuarios desde cada instancia origen, y luego los importa en un subsitio de la red.

Tres puntos a vigilar antes de migrar:

- Los uploads no se migran automáticamente. Copia la carpeta wp-content/uploads/ de cada sitio origen a wp-content/uploads/sites/<ID>/ en la red (el ID lo asigna WordPress al crear el subsitio).
- Comprueba la compatibilidad de plugins de red antes del cambio: un plugin activo en el sitio antiguo puede no funcionar en modo red. Haz una lista de los plugins de cada sitio origen y crúzala con la lista de plugins de red disponibles.
- Prueba las redirecciones de dominio. Si el sitio migrado tenía su propio dominio (www.client1.com), configura el módulo WordPress MU Domain Mapping o la funcionalidad nativa de dominio personalizado para que client1.example.com redirija a www.client1.com — o viceversa según tu elección.

Puesta en producción: pasos de validación antes de abrir a tus clientes

Antes de migrar tus primeros sitios de clientes a la red, revisa estos puntos:

- Prueba la creación de un subsitio desde client1.example.com y verifica que sea accesible desde un navegador externo.
- Verifica que el certificado comodín cubre *.example.com: openssl s_client -connect client1.example.com:443 -servername client1.example.com | grep subject.
- Simula una actualización de plugin de red y comprueba que todos los subsitios siguen funcionando.
- Planifica y prueba la restauración de un subsitio a partir de un volcado MariaDB: la restauración no probada no es una copia de seguridad.
- Documenta el procedimiento de incorporación para tus clientes: URL de administración, credenciales, permisos concedidos a su cuenta de administrador de subsitio.

Un VPS ServOrbit dimensionado para tu cartera WordPress te da el control sobre toda la pila — PHP, MariaDB, Nginx, copias de seguridad — sin capa de abstracción que oculte los errores.

Un solo VPS para toda tu agencia

Un VPS ServOrbit es suficiente para gestionar toda la cartera WordPress de tu agencia.

¿Necesita ayuda?

Consulte nuestro centro de ayuda y nuestra FAQ, o contacte con nuestro equipo: llamada, WhatsApp o correo electrónico. Soporte en francés, inglés y árabe.

Escribir por WhatsAppse abre en una pestaña nueva