Demostración de Técnica Avanzada de Generación de URLs para Optimización de Búsquedas

12,081 views

Published on

Un caso de estudio sobre el desarrollo de un esquema de URLs dinámico, basado en contenido para la construcción y aprovechamiento de URLs de alta relevancia en la optimización de búsquedas.

Published in: Technology, Design
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
12,081
On SlideShare
0
From Embeds
0
Number of Embeds
87
Actions
Shares
0
Downloads
5
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Demostración de Técnica Avanzada de Generación de URLs para Optimización de Búsquedas

  1. 1. Introducción Ayudando a Google a encontrar contenido relevante Un handler de mod_perl para impresionar a Google Ernesto Hernández-Novich <emhn@inmobiliarios.com.ve> Inmobiliarios.com.ve agosto, 2007 / Perl Mongers, Caracas Hernández-Novich Inmobiliarios.com.ve mod_perl / REST
  2. 2. Introducción Agenda 1 Introducción Hernández-Novich Inmobiliarios.com.ve mod_perl / REST
  3. 3. Introducción ¿Google necesita ayuda? . . . y algunos tips sobre usabilidad Páginas dinámicas Los robots pueden no seguir algunos de estos enlaces Los enlaces no son fáciles de recordar para el usuario – Depende exclusivamente de sus marcas de navegación JavaScript, formas y Cookies Los robots no ejecutan JavaScript, llenan formas o aceptan Cookies Cada vez más usuarios rechazan los Cookies y el contenido JavaScript Llenar formas de búsqueda no es la mejor manera de navegar por un sitio web Hernández-Novich Inmobiliarios.com.ve mod_perl / REST
  4. 4. Introducción ¿Qué es REST? Representational State Transfer – Un nombre rimbombante para explicar que se deben usar URLs legibles http://site.com/ catalog.php?id=69 http://site.com/customer/ &action=customer guitarra &verbose=yes URL compacto y más URL largo y complejo fácil de recordar No es evidente a qué Usualmente puede ser apunta una marca de página ¿Se puede volver a válida él. . . ? Hernández-Novich Inmobiliarios.com.ve mod_perl / REST
  5. 5. Introducción ¿Cómo y para qué aprovecha esto Inmobiliarios.com.ve? Refinar amigablemente una búsqueda inmobiliaria Permitir que se dispare una búsqueda directamente desde el navegador. . . Ayudar a Google en el cálculo correcto de la relevancia de los resultados Permitir al usuario guardar una búsqueda parcial, que puede completar en cualquier momento Ofrecer otra forma de usar el sitio – DWIM Hernández-Novich Inmobiliarios.com.ve mod_perl / REST
  6. 6. Introducción Interacción de mod_perl con Apache Apache pasa por cada una de estas fases cuando da servicio a una solicitud web mod_perl permite proveer manejadores para atender cada una de estas fases, con control completo de Apache en cada una Hernández-Novich Inmobiliarios.com.ve mod_perl / REST
  7. 7. Introducción Configuración de los manejadores en Apache Los manejadores se definen en ICV::Our::Magic P e r l L o a d M o d u l e ICV : : Our : : Magic Un manejador para la fase trans, <L o c a t i o n / q u i e r o /> PerlTransHandler que carga a un segundo ICV : : Our : : Magic : : h a n d l e r </ L o c a t i o n > manejador cuando se requiere Opera sobre el espacio web deseado en el sitio Hernández-Novich Inmobiliarios.com.ve mod_perl / REST
  8. 8. Introducción Directrices de configuración para Apache apache2.conf. . . <L o c a t i o n / q u i e r o /> ICVMagicSearchDSN " yourDSNstringHERE " OptionalUser OptionalPass ... </ L o c a t i o n > El módulo incorpora nuevas directivas de configuración En el módulo... u s e c o n s t a n t DSNSTRING => Se definen callbacks para ’ ICVMagicSearchDSN ’ ; procesar las nuevas directivas push @ d i r e c t i v e s , { name => DSNSTRING , Se puede restringir dónde puede r e q _ o v e r r i d e => Apache2 : : C o n s t : : ACCESS_CONF , aparecer la directiva args_how => Apache2 : : C o n s t : : TAKE123 , errmsg => DSNSTRING . ’ "DSN" [ U s e r ] [ P a s s ] ’ , }; Hernández-Novich Inmobiliarios.com.ve mod_perl / REST
  9. 9. Introducción Definición dinámica de manejadores dentro de Apache sub h a n d l e r { my $ r = s h i f t ; ... handler decide cómo atender if ( $script and $ u r i =~ m! $ s u r i ! esta solicitud and $ u r i ! ~ m! $ f u r i ! ) { Cuando es necesario, se indica a $r− a n d l e r >h ( " p e r l −s c r i p t " ) ; Apache que el manejador $r− e t _ h a n d l e r s >s ( PerlMapToStorageHandler res_handler manejará la => Apache2 : : C o n s t : : OK ) ; $r− e t _ h a n d l e r s >s solicitud ( PerlResponseHandler => & r e s _ h a n d l e r ) ; En caso contrario, se transfiere } ... el control a otro manejador } Hernández-Novich Inmobiliarios.com.ve mod_perl / REST
  10. 10. Introducción Generación de contenido desde un manejador Apache Dentro de los manejadores, podemos usar módulos como HTML::Template para producir contenido sub r e s _ h a n d l e r { El manejador debe devolver my $ r = s h i f t ; my $ t = HTML : : Template− >new Apache2::Const::OK para (...) $r− r i n t ( $t− u t p u t ) ; >p >o indicar que procesó r e t u r n Apache2 : : C o n s t : : OK; } correctamente el requerimiento. . . . . . otros resultados permiten señalar errores específicos al usuario Hernández-Novich Inmobiliarios.com.ve mod_perl / REST
  11. 11. Introducción ¿Qué se logra con todo esto? El usuario puede construir su búsqueda gradualmente haciendo clicks sobre los enlaces Los términos de búsqueda se agregan al cuadro de búsqueda automáticamente – El usuario puede completarlo y pulsar Enter para buscar El texto de la página cambia para ayudar al usuario Hernández-Novich Inmobiliarios.com.ve mod_perl / REST

×