Cómo redireccionar URLs antiguas con htaccess

blogers Seguir

Pi
SEO
Verificación en dos pasos desactivada
Desde
22 Ago 2010
Mensajes
6.616
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
Hola bueno de ante mano les agradesco su ayuda ando buscando una solucion quiere redirigir desde htacces un 301 y un rewrite

tengo el codigo asi

PHP:
#RedirectMatch 301 ^(.*)_[\s\S]{32}.html$ /miarchivo.php?jobname=$1&jobid=$2

RewriteRule ^(.*)-id-(.*).html$ /miarchivo.php?jobname=$1&jobid=$2&redirected=true [L]


Anteriorimente estaba asi

PHP:
RewriteRule ^(.*)_(.*).html$ /miarchivo.php?jobname=$1&jobid=$2&redirected=true [L]

Pero ahora yo quiero que las antiguas url se redirecionen correctamente

es decir url antigua

mipagina.com/titulo_783950d23f60e9d7910c1800b2ab6345.html

La url actual


mipagina.com/titulo-id-1234.html



Pero como hago par5a que estas url antiugas se redirigan

PHP:
mipagina.com/titulo_783950d23f60e9d7910c1800b2ab6345.html

ya logre cambiar el formato de las urls desde php ahora es asi

PHP:
mipagina.com/titulo-id-1234.html

pero me falta redirecionar las antiguas desde htacces
 
Última edición:

Cicklow

Admin
Épsilon
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Suscripción a IA
Desde
30 May 2011
Mensajes
961

en realidad solo tendrias que cambiar esta:
PHP:
RewriteRule ^(.*)_(.*).html$ /miarchivo.php?jobname=$1&jobid=$2&redirected=true [L]

para que envie a otro file:
PHP:
RewriteRule ^(.*)_(.*).html$ /301.php?jobname=$1&jobid=$2&redirected=true [L]
y que 301.php se encargue de mandar la cabezera 301 y redireccionar.

PHP:
<?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: /miarchivo.php?jobname=".$_GET['jobname']."&jobid=".$_GET['jobid']."&redirected=true");
die();
?>
 

blogers

Pi
SEO
Verificación en dos pasos desactivada
Desde
22 Ago 2010
Mensajes
6.616
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
En el htacces ya lo tengo asi

PHP:
RewriteRule ^(.*)-id-(.*).html$ /detail.php?jobname=$1&jobid=$2&redirected=true [L]

Lo quito del htacces y lo regreso asi

PHP:
RewriteRule ^(.*)_(.*).html$ /miarchivo.php?jobname=$1&jobid=$2&redirected=true [L]



en realidad solo tendrias que cambiar esta:
PHP:
RewriteRule ^(.*)_(.*).html$ /miarchivo.php?jobname=$1&jobid=$2&redirected=true [L]

para que envie a otro file:
PHP:
RewriteRule ^(.*)_(.*).html$ /301.php?jobname=$1&jobid=$2&redirected=true [L]
y que 301.php se encargue de mandar la cabezera 301 y redireccionar.

PHP:
<?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: /miarchivo.php?jobname=".$_GET['jobname']."&jobid=".$_GET['jobid']."&redirected=true");
die();
?>
 

Cicklow

Admin
Épsilon
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Suscripción a IA
Desde
30 May 2011
Mensajes
961
En el htacces ya lo tengo asi

PHP:
RewriteRule ^(.*)-id-(.*).html$ /detail.php?jobname=$1&jobid=$2&redirected=true [L]

Lo quito del htacces y lo regreso asi

PHP:
RewriteRule ^(.*)_(.*).html$ /miarchivo.php?jobname=$1&jobid=$2&redirected=true [L]

nono deja los dos, asi google cuando entre a un link viejo es redireccionado al nuevo
 

blogers

Pi
SEO
Verificación en dos pasos desactivada
Desde
22 Ago 2010
Mensajes
6.616
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.

Cicklow

Admin
Épsilon
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Suscripción a IA
Desde
30 May 2011
Mensajes
961
A okei y pongo en el archivo php301 el code que me pasaste

sisi.
PHP:
RewriteRule ^(.*)-id-(.*).html$ /miarchivo.php?jobname=$1&jobid=$2&redirected=true [L]
RewriteRule ^(.*)_(.*).html$ /301.php?jobname=$1&jobid=$2&redirected=true [L]
y 301.php con el code anterior!
 

blogers

Pi
SEO
Verificación en dos pasos desactivada
Desde
22 Ago 2010
Mensajes
6.616
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
Tengo conflicto por que tengo otros codigos en htacces que me esta redirgiendo asi

PHP:
RewriteRule ^(.*)_(.*).html$ /mipagina.php?jobname=$1&jobid=$2&redirected=true [L]

a mipagina.com/palabraabuscar.html

Y no lo manda al 301.php creo que es por el rewrite en search.php que lo tengo asi

PHP:
http://puu.sh/8O9nk.png

AYi no me atrovo a moverle por que rompera algo



sisi.
PHP:
RewriteRule ^(.*)-id-(.*).html$ /miarchivo.php?jobname=$1&jobid=$2&redirected=true [L]
RewriteRule ^(.*)_(.*).html$ /301.php?jobname=$1&jobid=$2&redirected=true [L]
y 301.php con el code anterior!
 

Cicklow

Admin
Épsilon
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Suscripción a IA
Desde
30 May 2011
Mensajes
961
Tengo conflicto por que tengo otros codigos en htacces que me esta redirgiendo asi

PHP:
RewriteRule ^(.*)_(.*).html$ /mipagina.php?jobname=$1&jobid=$2&redirected=true [L]

a mipagina.com/palabraabuscar.html

Y no lo manda al 301.php creo que es por el rewrite en search.php que lo tengo asi

PHP:
http://puu.sh/8O9nk.png

AYi no me atrovo a moverle por que rompera algo

pon antes del search el del 301. ya que asi tiene prioridad el 301 sobre el search
 

blogers

Pi
SEO
Verificación en dos pasos desactivada
Desde
22 Ago 2010
Mensajes
6.616
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
Ya lo puse antes

PHP:
RewriteRule ^(.*)_(.*).html$ /detail.php?jobname=$1&jobid=$2&redirected=true [L]

RewriteRule ^(.*)-id-(.*).html$ /detail.php?jobname=$1&jobid=$2&redirected=true [L]


RewriteRule ^(.*)_[\s\S]{32}.html$ /301.php?jobname=$1&jobid=$2&redirected=true [L]

y nada no redirige esas antiguas solo se quedan asi

misitio.com/titulo_b99f48a964cf0a0bd167104b298024f4.html



pon antes del search el del 301. ya que asi tiene prioridad el 301 sobre el search
 

Cicklow

Admin
Épsilon
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Suscripción a IA
Desde
30 May 2011
Mensajes
961
Ya lo puse antes

PHP:
RewriteRule ^(.*)_(.*).html$ /detail.php?jobname=$1&jobid=$2&redirected=true [L]

RewriteRule ^(.*)-id-(.*).html$ /detail.php?jobname=$1&jobid=$2&redirected=true [L]


RewriteRule ^(.*)_[\s\S]{32}.html$ /301.php?jobname=$1&jobid=$2&redirected=true [L]

y nada no redirige esas antiguas solo se quedan asi

misitio.com/titulo_b99f48a964cf0a0bd167104b298024f4.html

PHP:
RewriteRule ^(.*)_[\s\S]{32}.html$ /301.php?jobname=$1&jobid=$2&redirected=true [L]

??????????? yo no te pase ese code
 

blogers

Pi
SEO
Verificación en dos pasos desactivada
Desde
22 Ago 2010
Mensajes
6.616
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
Lo que pasa que en el redirect 301 estan

PHP:
#RedirectMatch 301 ^/(.*)/(.*)_[\s\S]{32}.html$ /detail.php?jobname=$2&jobid=$3
#RedirectMatch 301 ^(.*)_[\s\S]{32}.html$ /detail.php?jobname=$1&jobid=$2

como el serial es en md5 de 32 digitos lo reconoce automaticamente


PHP:
RewriteRule ^(.*)_[\s\S]{32}.html$ /301.php?jobname=$1&jobid=$2&redirected=true [L]

??????????? yo no te pase ese code


---------- Post agregado el 16-may-2014 hora: 05:06 ----------

Si lo pongo asi si me funciona

PHP:
RewriteRule ^(.*)_(.*).html$ /301.php?jobname=$1&jobid=$2&redirected=true [L]  


RewriteRule ^html$ /detail.php?jobname=$1&jobid=$2&redirected=true [L]

 

RewriteRule ^(.*)-id-(.*).html$ /detail.php?jobname=$1&jobid=$2&redirected=true [L]


pero crea conflictos

por ejemplo si se busca en el sitio asi


misitio.com/palabrabuscada_web.html


lo manda a 301.php por es _ guion por eso quiero implementar lo de los 32 digitos para que lo identifique


PHP:
RewriteRule ^(.*)_[\s\S]{32}.html$ /301.php?jobname=$1&jobid=$2&redirected=true [L]

??????????? yo no te pase ese code


---------- Post agregado el 16-may-2014 hora: 05:12 ----------

Ya lo puse asi [MENTION=9679]cicklow[/MENTION]

PHP:
RewriteRule ^(.*)_[\s\S]{32}.html$ /301.php?jobname=$1&jobid=$2&redirected=true [L]  



RewriteRule ^(.*)_[\s\S]{32}.html$ /301.php?jobname=$1&jobid=$2&redirected=true [L] 

RewriteRule ^(.*)-id-(.*).html$ /detail.php?jobname=$1&jobid=$2&redirected=true [L]

Ya parece funcionar lo puse harriba de todos

pero ahora el 301 se quedo en blanco
 

Cicklow

Admin
Épsilon
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Suscripción a IA
Desde
30 May 2011
Mensajes
961
Lo que pasa que en el redirect 301 estan

PHP:
#RedirectMatch 301 ^/(.*)/(.*)_[\s\S]{32}.html$ /detail.php?jobname=$2&jobid=$3
#RedirectMatch 301 ^(.*)_[\s\S]{32}.html$ /detail.php?jobname=$1&jobid=$2

como el serial es en md5 de 32 digitos lo reconoce automaticamente




---------- Post agregado el 16-may-2014 hora: 05:06 ----------

Si lo pongo asi si me funciona

PHP:
RewriteRule ^(.*)_(.*).html$ /301.php?jobname=$1&jobid=$2&redirected=true [L]  


RewriteRule ^html$ /detail.php?jobname=$1&jobid=$2&redirected=true [L]

 

RewriteRule ^(.*)-id-(.*).html$ /detail.php?jobname=$1&jobid=$2&redirected=true [L]


pero crea conflictos

por ejemplo si se busca en el sitio asi


misitio.com/palabrabuscada_web.html


lo manda a 301.php por es _ guion por eso quiero implementar lo de los 32 digitos para que lo identifique




---------- Post agregado el 16-may-2014 hora: 05:12 ----------

Ya lo puse asi [MENTION=9679]cicklow[/MENTION]

PHP:
RewriteRule ^(.*)_[\s\S]{32}.html$ /301.php?jobname=$1&jobid=$2&redirected=true [L]  



RewriteRule ^(.*)_[\s\S]{32}.html$ /301.php?jobname=$1&jobid=$2&redirected=true [L] 

RewriteRule ^(.*)-id-(.*).html$ /detail.php?jobname=$1&jobid=$2&redirected=true [L]

Ya parece funcionar lo puse harriba de todos

pero ahora el 301 se quedo en blanco

pero si ya tenes los redirectmatch... no entiendo ahora todo el code anterior que te pase...
 

blogers

Pi
SEO
Verificación en dos pasos desactivada
Desde
22 Ago 2010
Mensajes
6.616
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.
[MENTION=9679]cicklow[/MENTION] solo agrege como me dijiste

PHP:
RewriteRule ^(.*)_[\s\S]{32}.html$ /301.php?jobname=$1&jobid=$2&redirected=true [L]  


RewriteRule ^(.*)_[\s\S]{32}.html$ /detail.php?jobname=$1&jobid=$2&redirected=true [L]


RewriteRule ^(.*)-id-([0-9]+).html$ /detail.php?jobname=$1&jobid=$2&redirected=true [L]


PHP:
 <?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: /detail.php?jobname=".$_GET['jobname']."&jobid=".$_GET['jobid']."&redirected=true");
die();
?>


Puse este [\s\S]{32} en ves de este (.*) por que si lo pongo asi (.*) las buquedas de mi pagina que son asi pagina.com/web_php.html

Las redirigia al 301 con (.*) obviamente no todo los titulos bienen asi la mayoria biene asi pagina.com/web-php.html

Pero algunos si viene con guion bajo
 
Última edición:

Cicklow

Admin
Épsilon
Verificado
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Suscripción a IA
Desde
30 May 2011
Mensajes
961
[MENTION=9679]cicklow[/MENTION] solo agrege como me dijiste

PHP:
RewriteRule ^(.*)_[\s\S]{32}.html$ /301.php?jobname=$1&jobid=$2&redirected=true [L]  


RewriteRule ^(.*)_[\s\S]{32}.html$ /detail.php?jobname=$1&jobid=$2&redirected=true [L]


RewriteRule ^(.*)-id-([0-9]+).html$ /detail.php?jobname=$1&jobid=$2&redirected=true [L]


PHP:
 <?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: /detail.php?jobname=".$_GET['jobname']."&jobid=".$_GET['jobid']."&redirected=true");
die();
?>


Puse este [\s\S]{32} en ves de este (.*) por que si lo pongo asi (.*) las buquedas de mi pagina que son asi pagina.com/web_php.html

Las redirigia al 301 con (.*) obviamente no todo los titulos bienen asi la mayoria biene asi pagina.com/web-php.html

Pero algunos si viene con guion bajo
Yo no te dije eso... mi code usa PHP para redireccionar 301... no otra cosa...
 

blogers

Pi
SEO
Verificación en dos pasos desactivada
Desde
22 Ago 2010
Mensajes
6.616
Por favor, ten en cuenta 📝 que si deseas hacer un trato 🤝 con este usuario, está baneado 🔒.

¡Regístrate y comienza a ganar!

Beneficios

  • Gana dinero por participar
  • Gana dinero por recomendarnos
  • Descubre ofertas de empleo diariamente
  • Negocios seguros
  • ¡Información premium y más!

Acceder

¿Ya tienes una cuenta? Accede aquí

Arriba