Reescribiendo las URLs de nuestro sitio web

Las 2 razones que conozco para reescribir las URLs de nuestras aplicaciones Web son:

  1. Aportar un poco más de seguridad nuestro sitio web para que el usuario no conozca a simple vista el nombre de nuestras páginas aspx.
  2. Para mejorar la indexación de nuestra en página en buscadores.

Podemos echar mano de una herramienta bastante fácil de usar para realizar esta labor:

URL Rewriter for .NET / IIS / ASP.NET

Una vez descargada, los pasos que he seguido para emplearla en mis aplicaciones han sido estos:

  1. Configurarla (Aunque en la Web dice que no hace falta, en mi ejemplo sin condigurarla no me ha funcionado) en mi equipo de desarrollo (Windows XP - Visual Studio 2003 v1.1.4322):

    Ejecutable: C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\aspnet_isapi.dll

    Extensión: .*

    Desmarcar el check Comprobar si el archivo existe

  2. Añadir al Web.Config estas líneas, la sección de configuración, el elemento rewriter (Donde especificaremos como se van a reescribir las URLs) y el módulo http:

       1:  <?xml version="1.0" encoding="utf-8" ?>
       2:  <configuration>
       3:      <configSections>
       4:          <section
       5:          name="rewriter"
       6:          type="Intelligencia.UrlRewriter.Configuration.RewriterConfigurationSectionHandler, 
       7:          Intelligencia.UrlRewriter" />
       8:      </configSections>
       9:      <rewriter>
      10:          <rewrite url="Clientes/(.+)" to="~/Clientes.aspx?idcliente=$1" />
      11:      </rewriter>
      12:      <system.web>
      13:          <httpModules>
      14:              <add type="Intelligencia.UrlRewriter.RewriterHttpModule, Intelligencia.UrlRewriter" 
      15:              name="UrlRewriter" />
      16:          </httpModules>

  3. Si nos fijamos en el elemento rewrite, nos permite especificarle en su atributo url expresiones regulares, para no tener que estar especificando una a una todas las páginas de los clientes y así procesará todas las páginas que cumplan ese patrón, en mi caso, le estoy especificando que cuando la URL de la petición sea del tipo Clientes/lo que sea la reescriba a Clientes.aspx?idcliente=lo que sea con lo cual el cliente nunca sabrá a que página está llamando, porqué esta reescritura de la URL se hace en el servidor con lo cual para el cliente esto es transparente.

Si ejecutamos la aplicación:

Como véis, es sencillo de utilizar y desde mi punto de vista muy portente, para más info:

http://urlrewriter.net/index.php/support/reference/

Salu2

Attachment: URLRewrite.zip
Published 10/7/2007 13:59 por Luis Ruiz Pavón
Archivado en: ,,
Comparte este post:
http://geeks.ms/blogs/lruiz/archive/2007/07/10/reescribiendo-las-urls-de-nuestro-sitio-web.aspx

Comentarios

# re: Reescribiendo las URLs de nuestro sitio web

y como hacemos con el path de las imagenes que estan dentro de la pagina reescrita? Pues ahora el navegador no las muestras. Saludos

Tuesday, August 07, 2007 1:40 PM por Pedro