JuanCri.com

viernes 28 de diciembre, 2007 a las 13:08

Cuando migré mi sitio a LighTTPD + FastCGI, tuve que reescribir algunas reglas para mod_rewrite (Apache, LigHTTPD) y redirect (mod_redirect LighTTPD). La función principal de esto es evitar las URIs complicadas. Por ejemplo:

/Index.jc -> /Index.aspx
/CV.jc -> /CV.aspx
/blog/ -> /Blog.jc
/blog/wysiwyg.html -> /Post.aspx?nombre=wysiwyg

Pero me di cuenta de que estaba cometiendo algunos errores. Por ejemplo, tenía dos extensiones distintas, .jc (inventado) y .html (HTML estándar). Además, eran extensiones innecesarias. Si yo podía reescribir las URIs, ¿por qué utilizar extensiones?.

Cuando alguna empresa publica una dirección web, muy pocas veces se tiene en cuenta la usabilidad de la URI. Por ejemplo, es común ver anuncios como:

Visite http://...misitio..../portal/inicio.html

En este caso, bastaría con usar un índice de directorio (Apuntando hacia inicio.html). Esto es un rewrite simple.

Pero muchas veces, los sitios intentan ofuscar tanto las URIs que resultan en atrocidades como estas:

http://www.download.com/Corel-DVD-Copy/3000-2194_4-10754309.html?tag=toprated
Sugerencia: http://www.download.com/software/Corel-DVD-Copy/

http://www.tercera.cl/lt4/canal/nacional/0,0,3255_5666,00.html
Sugerencia: http://www.tercera.cl/canal/nacional/

http://www.falabella.com/webapp/commerce/command/ExecMacro/falabella/macros/home.d2w/report
Sugerencia: http://www.falabella.com/home

Si existe esta tecnología tan simple hace años, ¿por qué no utilizarla?. CNN durante mucho tiempo ha tenido una excelente política sobre las URIs. Por ejemplo:

http://cnn.com/time
http://cnn.com/politics

¡Qué diferencia! Aunque estas URIs pueden ser redirecciones, son patrones sencillos y fáciles de memorizar. Por eso, he decidido predicar con el ejemplo. Intenté dejar las URIs lo más simple posible:

http://www.juancri.com (redirección a http://www.juancri.com/principal)
http://www.juancri.com/blog
http://www.juancri.com/cv
http://www.juancri.com/links
http://www.juancri.com/blog/POST (ejemplo: http://www.juancri.com/blog/ubuntu_netboot)

Tambien es importante mantener redirecciones para la notación anterior. Así, /Index.jc redirecciona a /principal.

Creative Commons License
Blog JuanCri.com por Juan Cristóbal Olivares licenciado bajo la Creative Commons Attribution 2.0 Chile License.
Mono PostgreSQL Firefox Gratis

© JuanCri.com