Este post no intenta explicar que es Wordpres Multisitio o NGINX, solo me voy a avocar a la configuración asumiendo que WordPress ya está instalado y funcionando con NGINX en un sistema Ubuntu.
La instalación se realizo en Ubuntu 20.04 con WordPress 5.7 y NGINX
Asi que dicho esto comencemos desde un punto en el que WordPress ya está funcionando.
Lo primero que necesitamos es habilitar la función multisitio, para ello debemos localizar el archivo de configuración de nuestro WordPress.
Una vez dentro buscamos la línea que dice;
define( 'WP_DEBUG', false );
Y seguida de esta colocamos lo siguiente:
define( 'WP_ALLOW_MULTISITE', true );
Una vez hecho esto iniciamos sesión en WordPress y vamos a encontrar que ahora, dentro de WordPress en el menú HERRAMIENTAS esta la opción; CONFIGURACION DE RED:
Herramientas > Configuración de red
Ahí dentro vamos a ver un botón para instalar esta función, así que le damos a instalar y nos debería aparecer una leyenda diciéndonos que agreguemos las siguientes líneas e nuestro archivo WP-CONFIG.PHP
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false);
define('DOMAIN_CURRENT_SITE', 'EL DOMINIO DE TU SITIO');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);
Debería quedarnos algo así:
En mi caso este es un entorno de pruebas por lo que verán que tiene una IP privada, pero ustedes tendrán el nombre de su dominio o sitio.
Una vez completes estos pasos tu red estará activa y configurada. Tendrás que INICIAR SESION de nuevo.
Asi que hago el cambio que me pide e inicio sesión. En la parte superior, voy a ver un apartado que dice; MIS SITIOS.
Algunas consideraciones extras sobre la instalacion de WordPress Multisitio en Ubuntu con NGINX.
Como consideraciones extras, tengamos presente que los multisitios pueden funcionar como subdominios, con el formato;
subsitio.sitio_base
O pueden funcionar como una subcarpeta hijo del dominio base, con este formato.
Sitio_base/subsitio
Cualquiera de las dor cumple con su cometido, pero en esta configuración vimos la segunda forma de hacerlo por ser la opcion default y a mi parecer la más interesante de las dos.
Pero si quisieran configurarlo de la otra forma recuerden que esta configuración se define desde el parámetro:
define(‘SUBDOMAIN_INSTALL’, false); //En falso funciona como subcarpetas
define(‘SUBDOMAIN_INSTALL’, true); //En verdadero funciona como subdominio
Como ultimo comentario, y en caso de querer configurarlo como subdominio, va a ser necesario crear un registro del tipo A en el DNS y editar el archivo de configuración nginx del sitio en la línea server_name para que considere a cualquier subsitio de est
En mi caso
server_name tu_sitio_base *. tu_sitio_base;
Espero que este post les haya servido de ayuda y lo puedan implementar. Cualquier consulta o mejora al proceso será bienvenida.