10 consejos a considerar antes de publicar un sitio en Drupal

Días, semanas, meses desarrollando un sitio. Todo está listo para salir a producción. Pero la definición de "todo está listo" es bastante amplia, veamos algunos consejos y cosas a revisar antes de dar a luz a nuestro pequeño bebe Drupal.

La idea es simple, antes de que un sitio sea publicado en Internet, nos sentimos cómodos, y nos tomamos algunas licencias. Mientras más tiempo pasamos desarrollando, más probabilidades tenemos de olvidarnos de arreglar cosas importantes. Algunas de ellas, muy importantes.

1) Configurar la generación automática de URLs

En general, el sistema que usa Drupal para generar las URLs de contenido, o sea el típico node/1234 no es lo mejor en el mundo, básicamente porque ya sea que actualizamos de una versión a otra, o porque decidimos migrar nuestro Drupal a otro sistema, estas URLs no son amigables. Por lo tanto, usar Pathauto u otra alternativa, es muy recomendado. Y revisar que los patrones de reemplazo estén bien definidos también.

En serio, esto es muy importante. Supongamos que tenemos un sitio para publicación de noticias. Si le erramos en como se generan las URLs, por ejemplo, cometemos algún error de tipeo y en vez de 'novedades/[titulo del nodo]' escribimos 'novdades/[titulo del nodo]', vamos a tener muchos problemas, (de SEO y de otros también) para corregirlo.

Esta bien, uno puede decir, "ohhh, pero yo pruebo eso antes de sacar un sitio". ¡Perfecto!, pero también hay que acordarse de probar cosas como acentos y caracteres raros. El módulo transliteration puede ayudar a eliminar ese tipo de caracteres que hacen de nuestras URLs cosas%20dif%C3%ADciles%20de%20leer (cosas difíciles de leer).

2) Revisar los roles y permisos

Esto también es importante, por ejemplo, ¿los usuarios anónimos pueden publicar comentarios?

Los visitantes pueden registrarse en el sitio. Si la respuesta es no, hay que desactivar esta opción antes de poner en sitio en producción desde admin/config/people/accounts, porque Drupal por defecto lo permite.

Configuración para que solo los administradores puedan crear cuentas de usuarios

3) Desactivar módulos no utilizados

Un sitio en producción no requiere de Devel, Field UI, Views UI, etc, etc. No solo cargan el sistema de forma innecesaria, si no que introducen posibles fallas de seguridad, por ejemplo, devel/php para usuarios autenticados si tuviésemos mal configurados los permisos.

4) Definir el correo del sitio

¿Los formularios de contacto funcionan? ¿El servidor tiene SMTP funcionando correctamente? Si no disponemos de un buen sistema de envío de e-mails, podemos utilizar módulos como PHPMailer. Actualización:Escribí un nuevo artículo sobre Drupal y el correo electrónico

5) Activar el cache del sitio

Drupal es lento sin caches, no hay muchas vueltas sobre esto. Activar los caches es responsabilidad del desarrollador. Reconstruir el cache del theme en cada página es algo terrible, así que si estás usando Zen, desactivá esa opción antes de publicar el sitio.

Algunos módulos como CAPTCHA hacen que los caches no funcionen, ojo con ese tipo de módulos también.

6) Configurar cron

Cada tanto, Drupal necesita hacer algunas limpiezas, borrar archivos marcados para eliminar, refrescar algunos caches, indexar contenidos nuevos para búsquedas, etc.

Ese "cada tanto" se logra con la ejecución del cron. Para que se ejecute el cron, es necesario configurarlo http://drupalalsur.org/apuntes/ejecutar-cron-en-drupal-con-cpanel

7) Controlar los permisos de archivo

Uno de los problemas más comunes al mover nuestro sitio al servidor, es que nos olvidamos de definir correctamente los permisos del directorio files. Y al momento de limpiarse el cache y reconstruir todos los archivos CSS explota todo o los usuarios no pueden subir archivos cuando crean nuevos contenidos.

Para saber más como configurar los permisos existen en la red un... montón... de... tutoriales.

8) Revisar .htaccess

Para que www.example.com y example.com sean el mismo sitio, podemos utilizar las directivas del archivo .htaccess (si usamos apache como servidor) para redirigir todas las peticiones con www. a una sin www.

  # To redirect all users to access the site WITHOUT the 'www.' prefix,
  # (http://www.example.com/... will be redirected to http://example.com/...)
  # uncomment the following:
  # RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC]
  # RewriteRule ^ http%{ENV:protossl}://%1%{REQUEST_URI} [L,R=301]

Simplemente hay que descomentar los últimos dos # y guardar los cambios en el archivo .htaccess.

9) Desactivar los errores por pantalla

Registrar los errores del sitio es una buena práctica, mostrárselos al usuario final, no tanto.

Esto toma importancia cuando un simple warning de PHP hace que el usuario final piense que hay un error grave.

En admin/config/development/logging es posible configurar esta opción.

10) Definir un buen password de administrador

Porque admin/admin no es un buen detalle :)

¿Algún consejo más?

Me encantaría ver tus ideas en los comentarios.

¡Saludos!

Te invito a leer también...

Compartir este material en...

Comentarios

Para agregar una razón más para deshabilitar el display errors, este cuando está activado, si se dispara un error durante la generación de la página desactiva el cache para ella.
Otra recomendación que siempre hago es la de deshabilitar todos los módulos de devel y configuraciones relacionadas como "rebuild theme registry".
Con respecto al admin, de ser posible bloquearlo y generar un usuario para el administrador con rol con todos los permisos.
Si el sitio lo va a administrar un cliente, deshabilitar los módulos de ui (views UI, context UI, etc) para evitar que nos des configuren el sitio.

No hay duda que si deseamos recibir el mayor numero de visitas en nuestra publicación, el punto número 1 es el mas importante. Hay que indicarle a los buscadores por lo que nos pueden encontrar. Creo que es un fallo el que no se generen por defecto. V. Madrid

Excelentes tips, algunos no lo conocia..

Cuando se trabaja con Drupal hay tantas cosas a tener en cuenta que a veces uno se distrae de lo imprescindible... Aprovecho a felicitar por los aportes de Cuenco Digital: siempre es un lugar de consulta.

1. Revisar que los usuarios anónimos no puedan crear cuentas.
2. Instalar Modulo de Captcha
3. Habilitar la compresión de CSS y Javascript en la sección de performance
4. Implementar sistema de backups periódicos
5. Instalar google analytics
6. Correr algun script para generar un mapa de tu sitio y analizar la arquitectura.

tinenes enlazado un link que no funciona en la palabra de

http://www.hynnot.com/permisos-en-los-ficheros-de-una-instalaci%C3%B3n-d...

Menú diario o especial y las mejores carnes a la parrilla, disponemos de acceso para minusválidos, parque infantil, parking privado, transporte gratuito, comedores amplios, terraza... eventos como karaoke, despedida de solteros, halloween...

Disponemos de todo tipo de chimeneas, bioetanol o pellet....

Añadir nuevo comentario