• Inicio

  • This is the forum index page
Consultas sobre otros problemas y errores.
 #12005  por info301301
 11 Jul 2018 08:26
Buenas días,

Estoy tratando de hacer unas redirecciones 301 mediante el fichero .htaccess tal y como he hecho en otras ocasiones, pero por algún motivo que desconozco no consigo que funcionen.

Se trata de un WP versión 4.9.7 y les dejo un ejemplo de como las estoy escribiendo a ver si saben cual puede ser el motivo de que no funcione.

Redirect 301 /index.php?pagina=11 https://www.midominio.es/nueva-pagina/

Lo que sucede es que abre la página siempre en la home, pero le añade a la url ?pagina=11, es decir:
www.midominio.es/?pagina=11

Estas páginas que queremos redireccionar vienen de la web antigua que teníamos montada con un proyecto de código libre, y sospecho que el hecho de que no funcionen las redirecciones en WP se debe a la estructura de la url, porque como ya digo, con url amigables este tipo de redirección siempre me ha funcionado.

Espero que puedan ayudarme porque la web está en proceso de indexación y temo una penalización por contenido duplicado.

Un saludo.
Última edición por info301301 el 11 Jul 2018 10:51, editado 1 vez en total.
 #12006  por info301301
 11 Jul 2018 08:48
Estupendo, he encontrado una solución, sería hacer algo como esto:

RewriteEngine on
RewriteCond %{QUERY_STRING} pagina=11
RewriteRule ^index\.php$ /como-pedir-un-presupuesto-de-cocina/? [L,R=301]

Mí pregunta ahora es, tengo que hacer varias redirecciones como esta, ¿tengo que repetir estas mismas tres líneas por cada una de ellas, o hay forma de compactarlas?
 #12007  por info301301
 11 Jul 2018 09:56
Una duda más,
como puedo diferenciar la página en estas dos cadenas, ya que poniéndolo así, ambas me redireccionan a la misma página, en este caso, al index.

RewriteCond %{QUERY_STRING} pagina=1
RewriteRule ^index.php$ //? [L,R=301]

RewriteCond %{QUERY_STRING} pagina=10
RewriteRule ^index.php$ /comprar-cocinas-en-kit/? [L,R=301]
 #12008  por Jlramirez
 11 Jul 2018 10:25
Estimado usuario,
RewriteCond %{QUERY_STRING} pagina=11
RewriteRule ^index\.php$ /como-pedir-un-presupuesto-de-cocina/? [L,R=301]
Lo que se esta haciendo es que todo lo que contenga pagina=11 que este en index vaya a la dirección que ha escrito.
RewriteCond %{QUERY_STRING} pagina=1
RewriteRule ^index.php$ //? [L,R=301]

RewriteCond %{QUERY_STRING} pagina=10
RewriteRule ^index.php$ /comprar-cocinas-en-kit/? [L,R=301]
El problema que le sucede aquí es que esta condicionando en pagina=1 por lo que la otra condición no llega a ejecutarse.

Le dejo una guía sobre el redireccionamiento en páginas wordpress: https://blog.profesionalhosting.com/cms ... wordpress/

Un saludo.
 #12009  por info301301
 11 Jul 2018 10:32
Si, eso es lo que pensaba, que la redirección de la página 1 me está condicionando tanto la página 10 como la 11. Por eso mismo preguntaba como diferenciar las cadenas.
Respecto al artículo que me recomienda siento decirle que no me ayuda. Se que hay plugins para hacer redirecciones, pero nuestra intención es hacerlos directamente en el fichero .htaccess.
En cualquier caso agradezco su respuesta.
A ver si alguien puede dar una solución concreta a este problema.

Saludos.