Inicio > Programación Web > Redirect vs. Rewrite

Redirect vs. Rewrite

jueves, 4 de abril de 2024 Dejar un comentario Ir a comentarios

¿Cuál es la diferencia entre Redirect y Rewrite?

Redirect y Rewrite son distintos, aunque muchas personas usan los términos indistintamente. Es mejor entender las diferencias con claridad, para así saber cómo hacer lo que quieras con tu servidor.

La principal diferencia entre Redirect y Rewrite puede ser descrito sucintamente:

  • Rewrite es una operación del lado del servidor
  • Redirect envía una respuesta inmediata al cliente

Reescritura es una operación del lado del servidor

«La solicitud se reescribe» significa que el resultado de la reescritura es realizada en el lado del servidor. El resultado podría ser una página estática, o un archivo de imagen o una página dinámica (como una página php o una página aspx). Independientemente del resultado de la reescritura de URL, el navegador no es notificado que se ha producido una nueva versión, dentro del servidor web.

Usando una rewrite, el navegador puede pedir http://miservidor.com/definicion/soccer.htm y recibir el contenido de c:\definicion\football.htm, pero ignora que el servidor haya realizado esta sustitución. La dirección URL en el navegador sigue reflejando lo que el navegador originalmente solicito: /definicion/soccer.htm .

Este es un motivo de confusión para mucha gente, así que lo voy a repetir: el navegador no puede detectar si el servidor ha reescrito su solicitud. No hay diferencia en el explorador. Si un servidor reescritura el URL, el buscador no está informado. No se produce una actualización de la dirección en la barra de direcciones del navegador la dirección, en el caso de una reescritura.

Redirect envía una respuesta inmediata al cliente

La redirección implica el envío de una respuesta HTTP al cliente, con una nueva dirección URL. Usando un rewrite, el navegador puede pedir http://miservidor.com/definicion/soccer.htm y el servidor responde, efectivamente «No, no quieres football.htm, lo que realmente quieres es soccer.htm». El servidor devuelve una respuesta HTTP, con un código de respuesta 301 (Movido permanentemente) o 302 (Movido temporalmente), con una nueva dirección http://miservidor.com/definicion/football.htm. Normalmente, cuando recibe el navegador actualiza la barra de direcciones del navegador, y luego hacer una nueva solicitud de la nueva URL.

Puedes usar Redirect y Rewrite juntos

En muchos casos, un conjunto de reglas se incluyen para ambas, las directivas RewriteRule y las directivas RedirectRule. Por ejemplo, a menudo las reglas puede redirecionar peticiones erróneas o mal formadas a una página «no encontrado», mientras que las solicitudes correctamente formadas pueden ser reescritas en el servidor.

Fuente : IIRF

Comparte y diviertete:
  • Print
  • Digg
  • StumbleUpon
  • del.icio.us
  • Facebook
  • Yahoo! Buzz
  • Twitter
  • Google Bookmarks
  • BarraPunto
  • Bitacoras.com
  • BlinkList
  • Blogosphere
  • Live
  • Meneame
  • MSN Reporter
  • MySpace
  • RSS
  • Suggest to Techmeme via Twitter
  • Technorati
  • LinkedIn
  • email
  • FriendFeed
  • PDF
  • Reddit
  • Wikio IT
  • Add to favorites
  • blogmarks
Top Footer