Ver Mensaje Individual
  #7 (permalink)  
Antiguo 04/12/2011, 15:01
Axo
 
Fecha de Ingreso: abril-2003
Ubicación: Virtual
Mensajes: 953
Antigüedad: 21 años
Puntos: 7
Respuesta: Borrar web entera y volver a indexarla??

Cita:
Iniciado por charlyalegret Ver Mensaje
A ver!
Una cosa són las redirecciones 301, otra cosa la conversión a url amigables!
Si ya tienes indexado de una manera y quieres cambiar a otras url, debes hacer 301. Este tipo de redirecciones las puedes hacer de la misma manera que con Rewriterule pero añadiendo al final [R=301].
A tener en cuenta:
- si no pones lo de 301, lo que hace es que interpreta la url de la primera parte de la regla, la transforma en la segunda, pero en el navegador (i para todo el mundo) sólo existirá la primera url
- si pones lo del 301, lo que hace es que interpreta la url de la primera parte, la transforma en la segunda, y en el navegador aparecerá la segunda, a la vez que a los buscadores les dirá que se trata de una redirección permanente, con el tiempo se olvidarán de la primera url e indexarán la segunda, transfiriendo su pr etc etc etc.

Otra opción es usar "redirectMatch 301". La sintaxi para crear las reglas me parece que es similar a la de rewriterule con algunas diferencias: la segunda url debe ser completa (empezando por http://)

Bueno, en conclusión, una regla para el ejemplo que comentas podría ser:


RewriteRule ^index.php?seccion=(.+)&id=(.+) /seccion_$1_$2.html [R=301]

Ojo: yo nunca he hecho una redirección como esta (que contenga (.+) en esa parte de la url), y no estoy seguro que la sintaxis sea del todo correcta o que haya que escapar algun caracter o algo, pero puedes probar!

Edito: para profundizar más en el tema redireccionamientos, puedes preguntar mejor en el foro de apache!! ;)
Al final no me ha valido esto. Tengo que pasar ademas de seccion_$1_$2_slugpersonalizado.html donde el slugpersonalizado tengo que sacarlo de BD y por lo tanto... es imposible.

Solución alternativa: Hacerlo con php.
Código PHP:
<?php
// Permanent redirection
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.somacon.com/");
exit();
?>
Hare un switch dependiendo del ID<4904 x ejemplo y ejecuto el header anterior con la url ya creada previamente. Espero que me funcione