Cómo redirigir .aspx a .php

Antes de gestionar este blog con WordPress, hice su desarrollo basado en ASP.NET pero cuando migré, en Febrero de 2007, al nuevo CMS se me quedó un asunto pendiente ¿cómo redirigir las páginas de los artículos? ya que utilizaban la URL del tipo https://www.raulserrano.net/articulo.aspx?id=505

Recientemente revisando el log de estadísticas observo que todavía hay algunos intentos de acceso a dichas URL’s antiguas por lo que generan error 404, así que me he propuesto ponerle solución definitiva para que sean redirigidas correctamente al nuevo enlace correspondiente:

  • Añadiendo el siguiente código a la plantilla header.php de Sandbox, que es el tema utilizado en este blog.
    
    <?php
    if ($_GET['id']) {
    switch ($_GET['id']) {
    case '503' : //Limpieza del sistema
    header('HTTP/1.1 301 Moved Permanently');
    header('Location: https://www.raulserrano.net/2004/01/limpieza-del-sistema/');
    break;
    case '504' : //Escritorio remoto via web
    header('HTTP/1.1 301 Moved Permanently');
    header('Location: https://www.raulserrano.net/2003/12/escritorio-remoto-via-web/');
    break;
    }
    }
    ?>
    

    Dichas líneas de código se sitúan al principio del archivo, por encima del DOCTYPE. Lo que hacen es comprobar si la URL está pasando algún parámetro, en concreto, si existe una variable denominada id que es la que utilizaba para enlazar a los articulos, en tal caso, una sentencia switch recorre los valores posibles y mediante una redirección en el header indicamos la nueva ubicación. Es más correcto hacer la redirección como pongo aquí ya que los motores de búsqueda entenderán que ha cambiado a una nueva URL y quedará indexada manteniendo su pagerank.

  • Aunque no era necesario, también he añadido una nueva regla al fichero .htaccess
    RewriteRule ^articulo.aspx /categoria/articulos/ [L,R=301]
    Asi puedo redirigir a la categoría Articulos a aquellos que sólo escriban la URL sin pasar el parámetro de número de articulo https://www.raulserrano.net/articulo.aspx

De esta manera creo haber solventado el problema de redirección de páginas antiguas y no debería fallar ninguna. A día de hoy funcionan todas las redirecciones de las distintas nomenclaturas que ha tenido esta web habiendo pasado por un inicial .HTML puro, posterior ASP.NET y el actual .PHP

  1. Pingback: Bitacoras.com

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

A continuación:

Gira TechNet Technology Tour 08 en Murcia

Gira TechNet Technology Tour 08 en Murcia