Configurar redirecciones 301 en PrestaShop después de una migración
Cuando migras una tienda PrestaShop, las URLs suelen cambiar. Sin redirecciones, cada dirección antigua devuelve un 404 a visitantes y motores de búsqueda. Una redirección 301 indica que la página se movió permanentemente y es la elección correcta para una migración permanente. Un 302 es temporal y no debe usarse para mapas de migración de URLs antiguas a nuevas.

Prepara un mapa de antiguas a nuevas
Exporta las URLs antiguas y nuevas a un archivo de dos columnas antes del lanzamiento. Mantén las rutas normalizadas: un host, un protocolo, un estilo de barra final y sin cadenas de redirecciones. Por ejemplo:
old_path,new_url
/old-product.html,https://www.example.com/new-product
/old-category/,https://www.example.com/new-category/
/3-shoes,https://www.example.com/shoesApache (.htaccess)
Coloca las reglas antes de las reglas propias del dispatcher de PrestaShop, por encima del bloque # Dispatcher y después de RewriteEngine On. Si PrestaShop gestiona antes la petición, tu redirección puede no ejecutarse nunca.
RewriteEngine On
# Exact old-to-new page mapping
Redirect 301 /old-product.html https://www.example.com/new-product
Redirect 301 /old-category/ https://www.example.com/new-category/
# Pattern redirect
RewriteRule ^old-brand/(.*)$ /brand/$1 [R=301,L]
# Strip ID-prefixed category URLs, e.g. /3-shoes -> /shoes
RewriteRule ^([0-9]+)-(.+)$ /$2 [R=301,L]Nginx
Para unas pocas redirecciones, usa locations exactas. Para un mapa de migración grande, usa map en el contexto http y una única regla return en el bloque server.
# http {} context
map $request_uri $redirect_target {
default 0;
/old-product.html /new-product;
/old-category/ /new-category/;
/3-shoes /shoes;
}
# server {} context
if ($redirect_target) {
return 301 https://www.example.com$redirect_target;
}Para miles de URLs, genera reglas desde el CSV o usa un módulo de redirecciones que permita al equipo gestionarlas desde el back office. Prueba antes de salir en vivo con curl -I https://www.example.com/old-product.html; buscas 301 Moved Permanently y el Location final. Usa curl -IL para detectar cadenas.
Errores comunes
- Cadenas de redirección: apunta las URLs antiguas directamente al destino final.
- Bucles infinitos: comprueba www/non-www, HTTP/HTTPS y reglas de módulos en conflicto.
- Sensibilidad a mayúsculas: las rutas Linux distinguen mayúsculas y minúsculas; usa
[NC]en reglas rewrite de Apache solo cuando quieras expresamente coincidencia sin distinguir mayúsculas. - Query strings eliminadas: consérvalas solo cuando aporten estado útil; elimina parámetros de tracking.
- Retención corta: conserva las redirecciones importantes de migración al menos un año, a menudo más para páginas de alto valor.
Para el traslado completo, incluidos archivos, base de datos, tema y redirecciones, sigue nuestra guía de migración de PrestaShop.
¿Le resultó útil esta respuesta?
¿Todavía tienes preguntas?
¿No encuentras lo que buscas? Envíanos tu pregunta y te responderemos.