OHV y Wordpress

OVH y WordPress Multisite

Desde hace un tiempo le sigo la pista a WordPress MUltisite, un fork de WordPress que permite crear redes como blogspot, sitios con una url común pero configuraciones, contenidos y visualizaciones distintas.

OHV y WordPress
OHV y WordPress

La idea de crear una red en el dominio no es nueva, hace años lo intenté hacer con Drupal pero no llegué a ningún lado (problemas con la importación de contenido viejo, problemas con las urls bien formadas, problemas de comprensión con Drupal).

Con WordPress era más fácil de implementar usando subdominios e instalaciones independientes pero no es operativo.
Pensar en actualizar y gestionar X sitios de manera aislada por simple placer me hizo descartarlo.

La versión 3.0 integró WPMU en la rama principal, una única instalación gestiona toda una estructura de blogs, hay un único sitio donde configurar, actualizar y gestionar usuarios, plugins y temas para toda la red. Cada blog es completamente operativo y la administración de cada uno es delegable.

En los últimos años la web principal (blocdenotas.org) ha tenido una serie de imágenes estáticas para acceso simple a los servicios añadidos (mail, twitter, last.fm, Google Calendar) que o bien no funcionan o no se usan; sustituirlas por una especie de feed de blogs temáticos me parece una idea sumamente atractiva.

DISCLAIMER : Quizá lo siguiente no funcione con tu instalación, configura las rutas oportunas según tu configuración.

DISCLAIMER2 : Se presupone que tienes una instalación LIMPIA y FUNCIONAL de WordPress (3.5 a día de escritura).

DISCLAIMER3 : No nos hacemos responsables de nada.

 

La instalación de un Multisite no difiere demasiado de una para un sólo dominio pero hay que tener claro qué tipo de redes existen y qué requisitos tiene cada una.

WordPress diferencia dos tipos de redes: basadas en subdominios test.tu.url o en rutas normales tu.url/test. Mi elección es por subdominio, las urls son más fáciles de recordar y más bonitas. Los requisitos son:

  1. Usar la raíz del servidor web.
  2. Añadir unas líneas a wp-config.php, antes de la definición del absolute path:/* Multisite */
    define('WP_ALLOW_MULTISITE', true);
  3. Crear una carpeta blogs.dir en wp-content/. Establecer los permisos en 705.
  4. Crear un Wildcard DNS en OVH desde la opción SUBDOMINIOS en ALOJAMIENTO.
    * a /www/
    NO crees un registro A (* a .tu.url) desde Zona DNS, no funcionará y perderás tiempo y paciencia recargando el 404 de OVH.
    Todos los planes soportan subdominios.
  5. Activar la red. Herramientas > Red.
    Desactiva las opciones de HTTPS si estás usando el SSL compartido.
  6. Añade las líneas que te indica para el wp-config.phpdefine('MULTISITE', true);
    define('SUBDOMAIN_INSTALL', true);
    define('DOMAIN_CURRENT_SITE', 'tu.url');
    define('PATH_CURRENT_SITE', '/');
    define('SITE_ID_CURRENT_SITE', 1);
    define('BLOG_ID_CURRENT_SITE', 1);
    …y el .htaccess de la raíz de tu dominio.RewriteEngine On
    RewriteBase /
    RewriteRule ^index.php$ - [L]
    RewriteRule ^wp-admin$ wp-admin/ [R=301,L]
    RewriteCond %{REQUEST_FILENAME} -f [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^ - [L]
    RewriteRule ^(wp-(content|admin|includes).*) $1 [L]
    RewriteRule ^(.*.php)$ $1 [L]
    RewriteRule . index.php [L]
  7. Si es la primera vez que usas .htaccess en OVH deberías saber que con él se configuran algunas opciones de PHP u otras opciones que habitualmente se encuentran en httpd.conf, el archivo de configuración de apache.
    Necesitarás tener un .htaccess que incluya, además de el código del punto anterior, estas líneas:SetEnv PHP_VER 5
    Options +FollowSymlinks -Indexes
    Establece la versión de PHP a usar, activa el seguimiento de enlaces y no permite el listado de directorios.

 

¿PROBLEMAS?

 

  • Cada vez que visitas la supuesta url de un nuevo blog aparece todo el rato una página de OVH, realmente es el acceso webmail del servidor que hospeda tu web.
    No creaste el wildcard como se indica en el punto 4 e hiciste un registro A.
  • Cualquier página a la que accedes en tu espacio web muestra 500 Internal Server Error.
    Si buscas en Google y lees que es porque tu hosting no lee correctamente el .htaccess es casi cierto, no te ofusques con las pésimas guías de OVH e intenta comprender el funcionamiento de .htaccess.
    No tienes el +FollowSymlinks en el .htaccess de /www/
  • Procura instalar todos los dominios necesarios sin usar SSL o establecerá que la url a formar es HTTPS y tus usuarios verán el error de autofirmado.
    • Para habilitar el SSL, incluye en el wp-config.php:/* SSL  EN PANTALLA DE LOGIN */
      define('FORCE_SSL_LOGIN', true);
      Para forzar el SSL durante todas las sesiones (incluído el login) incluye, sólo:define('FORCE_SSL_ADMIN', true);
    • En alojamientos compartidos el único SSL disponible es el autofirmado así que dará «problemas» de certificado al acceder, añádelo a tu sistema y vigila que no cambie por arte de magia.

Pues eso… en breve volverá a haber cambios en el blog, test.* se convertirá en un 301 a devloop.*, con contenido exclusivamente técnico y así poder apartar churras, larras, merinas, ripollesas y segureñas que aunque todo es corral, la mezcla desprestigia.

Enjoy!
·n·

5 comentarios en «OVH y WordPress Multisite»

  1. Hola. Muchas gracias, perfectamente explicado.

    Una consulta. Si el dominio asociado al alojamiento compartido es dominio1.com y lo que se desea es realizar esta operación para otro dominio de la cuenta (multidominio) dominio2.com ¿Qué cambios re deberían realizar? Es decir, lo que se quiere es tener subdominio[1..n].dominio2.com y el dominio principal asociado al alojamiento es dominio1.com

    ¡Gracias!

    1. Hola Javier

      Los mismos que siendo un dominio «único», de hecho las pruebas las hice contra un multidominio con una estructura similar a la que planteas.

      La configuración de multidominio en OVH crea dos carpetas: WWW/ y WWW2/, sólo tendrías que seguir los pasos que comento (básicamente la configuración de .htaccess) en el multidominio adecuado.

      Suerte!

      ·n·

  2. Buenas tardes,

    Lo primero es felicitarte por este gran tutorial, me ha servido y me funciona perfectamente los subdominios que he creado.

    Me gustaría saber como se podría llegar un paso más allá y poder mapear dominios de primer nivel a los subdominios creados, del estilo que http://www.dominionuevo.com apunte a sub.dominio.com. Se que esto se puede hacer con el plugin WP MU Domain Mapping.

    He instalado dicho plugin pero no lo consigo hacer funcionar, tanto el hosting como el nuevo dominio lo tengo en OVH, ¿me podrías echar una mano?.

    Gracias y un saludo

    1. Hola JJ

      El plugin en el WordPress de dominio.com no te va a funcionar para dominionuevo.com sin las modificaciones oportunas en el DNS de dominionuevo.com. Y tras ellas, no debería ser necesario.

      Suponiendo que los dominios de primer nivel también los tengas con ovh:

      – Entra en el Manager de OVH de dominionuevo.com
      Dominios & DNS > Redirecciones web
      – Redirección de: * .dominionuevo.com
      hacia: http:// sub.dominio.com

      Los cambios en DNS pueden tardar hasta 48h en ser efectivos, no desesperes! ;-D

      Gracias por las felicitaciones, se aprecian =)

      ·n·

      1. Buenas de nuevos,

        Después de hablar también con el soporte de OVH, me dieron la opción de hacer multidominio, que es prácticamente lo que quería hacer, añadí en nuevo dominio a la lista de multidominio y le dije a que carpeta quería que apuntara y como era un dominio también de OVH no tuve que cambiar las dns a las que apuntaba, después de 24h ha salido funcionando.

        Para que me funcionara tuve que crear el multisites de WordPress como carpetas y no como subdominios.

        Gracias por tu ayuda y un saludo

Deja un comentario