Cómo cambiar la URL de tu tienda PrestaShop correctamente
Antes de empezar: ¿Por qué cambiar la URL o el dominio de tu PrestaShop?
Cambiar la URL de tu tienda PrestaShop es una tarea que, si se hace mal, puede dejarte la tienda en blanco o con errores de configuración. Lo más habitual es hacerlo cuando cambias de dominio (por ejemplo, de www.tiendaantigua.com a www.tiendanueva.com), cuando pasas de HTTP a HTTPS, o cuando migras de un subdominio a un dominio principal.
La buena noticia es que PrestaShop tiene un sistema interno para gestionar este cambio, pero hay que seguir un orden muy concreto. Si lo haces a lo loco, puedes perder el acceso al panel de administración o ver la tienda rota. En esta guía te voy a explicar, paso a paso y sin tecnicismos, cómo hacerlo correctamente para no romper nada por el camino.
Requisitos previos antes de tocar nada
Antes de lanzarte a cambiar la URL, asegúrate de tener esto controlado:
- Acceso al panel de administración de PrestaShop (la parte de
admin123o el nombre que le pusieras). - Acceso al hosting por FTP o por el gestor de archivos (cPanel, Syspanel, etc.). Si usas Syspanel, recuerda que el acceso es a través del puerto 2106.
- Una copia de seguridad completa de tu tienda (archivos y base de datos). Esto es imprescindible. Si algo falla, podrás restaurar sin perder ventas ni productos.
- El nuevo dominio ya apuntando al servidor donde tienes la tienda. Es decir, que si escribes la nueva URL en el navegador, te cargue algo (aunque sea un error de PrestaShop).
Si no tienes claro cómo hacer una copia de seguridad, pausa y hazla ahora. Te lo digo en serio: no sigas sin copia de seguridad. Es la diferencia entre un susto de 10 minutos y un desastre de varios días.
Paso 1: Cambiar la URL en el archivo de configuración de PrestaShop
PrestaShop guarda la URL de tu tienda en un archivo llamado parameters.php, que está dentro de la carpeta app/config/. Este archivo contiene dos líneas clave: database_host y, más importante para nosotros, url o domain. En versiones modernas, la URL se guarda en la tabla ps_shop_url de la base de datos, pero el archivo parameters.php también tiene referencias.
Para editarlo, necesitas acceder a tu hosting. Si usas Syspanel, entra por el puerto 2106, ve al gestor de archivos y navega hasta public_html o www (la carpeta donde está instalada tu tienda). Busca la ruta app/config/parameters.php y ábrela con el editor de texto.
Dentro, busca las líneas que dicen algo como:
'database_host' => 'localhost',
'secret' => '...',
Y más abajo, en la sección de parameters, verás algo como:
'ps_caching' => 'CacheMemcache',
'ps_caching_enabled' => 0,
No toques nada de eso. Lo que nos interesa son las líneas de dominio. En versiones más antiguas, puedes ver algo como:
'domain' => 'www.tiendaantigua.com',
'domain_ssl' => 'www.tiendaantigua.com',
Si las encuentras, cámbialas por tu nuevo dominio. Por ejemplo:
'domain' => 'www.tiendanueva.com',
'domain_ssl' => 'www.tiendanueva.com',
Guarda el archivo y cierra. Importante: si tu tienda usa SSL (https), cambia también domain_ssl. Si no usas SSL, deja domain_ssl igual que domain o vacío.
Paso 2: Actualizar la URL en la base de datos (la parte crítica)
Aquí es donde la mayoría de la gente la lía. PrestaShop guarda la URL en la tabla ps_shop_url de la base de datos. Si solo cambias el archivo de configuración, la tienda puede funcionar, pero al entrar al panel de administración te va a redirigir a la URL antigua o dar errores raros.
Para cambiar la URL en la base de datos, tienes dos opciones:
Opción A: Desde el panel de administración (si aún tienes acceso)
Si todavía puedes entrar en tu panel de administración, PrestaShop tiene una herramienta para esto. Ve a Parámetros avanzados > Rendimiento y, en la parte inferior, busca el apartado "Multi-store" o "URL de la tienda". Dependiendo de la versión, puede estar en Parámetros avanzados > Multitienda o en Preferencias > General.
En versiones modernas (1.7 y 8.x), la ruta es: Configuración > Parámetros avanzados > Multitienda. Ahí verás tu tienda listada. Haz clic en el icono de edición (el lápiz) y verás los campos "Dominio" y "Dominio SSL". Cámbialos por el nuevo dominio y guarda.
Opción B: Directamente en la base de datos (si no tienes acceso al panel)
Si no puedes entrar al panel, tendrás que hacerlo por SQL. Accede a phpMyAdmin (o la herramienta de gestión de bases de datos de tu hosting). Si usas Syspanel, entra por el puerto 2106 y busca la sección de bases de datos.
Una vez dentro, localiza tu base de datos (la que usa PrestaShop) y busca la tabla que se llama ps_shop_url. Ejecuta la siguiente consulta SQL:
SELECT * FROM ps_shop_url;
Verás una fila con tu dominio actual. Ahora ejecuta:
UPDATE ps_shop_url SET domain = 'www.tiendanueva.com', domain_ssl = 'www.tiendanueva.com' WHERE id_shop_url = 1;
Atención: si tu tabla no se llama ps_shop_url sino que tiene un prefijo distinto (por ejemplo, prestashop_shop_url), ajusta el nombre. Puedes ver el prefijo en parameters.php en la línea 'database_prefix' => 'ps_'.
Paso 3: Limpiar la caché de PrestaShop
Después de cambiar la URL, PrestaShop guarda caché de la configuración anterior. Si no la limpias, verás errores de redirección o la tienda cargará con la URL vieja.
Para limpiar la caché:
- Ve al panel de administración (si puedes entrar).
- Ve a Parámetros avanzados > Rendimiento.
- Haz clic en "Vaciar la caché" o en el botón de refrescar que aparece en la parte superior.
Si no puedes entrar al panel, borra manualmente el contenido de la carpeta var/cache (o cache en versiones antiguas) desde el gestor de archivos de tu hosting. No borres la carpeta entera, solo su contenido. En PrestaShop 1.7 y 8.x, la ruta es var/cache/prod y var/cache/dev.
Paso 4: Actualizar las URLs en el contenido (productos, categorías, imágenes)
Este es el paso que más se olvida y que más dolores de cabeza da. PrestaShop genera URLs amigables para productos, categorías y CMS que incluyen el dominio. Si no las actualizas, las páginas internas seguirán apuntando a la URL antigua.
La forma más sencilla de hacerlo es desde el panel de administración:
- Ve a Configuración > Parámetros avanzados > Rendimiento.
- Busca el botón "Reconstruir el índice de URLs" o "Regenerar las URLs amigables". En PrestaShop 1.7, está en Configuración > Parámetros avanzados > SEO y URLs.
- Haz clic en "Añadir" o "Guardar" para forzar la regeneración.
Si no tienes acceso al panel, tendrás que hacer un reemplazo en la base de datos. Ejecuta estas consultas SQL (ajusta el prefijo):
UPDATE ps_product_lang SET link_rewrite = REPLACE(link_rewrite, 'tiendaantigua.com', 'tiendanueva.com');
UPDATE ps_category_lang SET link_rewrite = REPLACE(link_rewrite, 'tiendaantigua.com', 'tiendanueva.com');
UPDATE ps_cms_lang SET link_rewrite = REPLACE(link_rewrite, 'tiendaantigua.com', 'tiendanueva.com');
Ojo: estas consultas solo funcionan si el dominio estaba incluido en el link_rewrite, cosa que normalmente no ocurre. Lo más habitual es que el link_rewrite solo contenga la parte final de la URL (el slug). Por eso, lo recomendable es usar la herramienta de regeneración del panel.
Paso 5: Configurar redirecciones 301 (imprescindible para el SEO)
Si cambias de dominio, todas las URLs antiguas deben redirigir a las nuevas con un redireccionamiento 301. Si no lo haces, perderás todo el posicionamiento SEO que tenías, porque los buscadores verán las páginas antiguas como "error 404" y no transferirán la autoridad.
La forma más fácil de hacerlo es añadir reglas en el archivo .htaccess de la raíz de tu tienda. Al final del archivo, añade:
RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} ^tiendaantigua\.com [NC,OR]
RewriteCond %{HTTP_HOST} ^www\.tiendaantigua\.com [NC]
RewriteRule ^(.*)$ https://www.tiendanueva.com/$1 [L,R=301,NC]
Guarda el archivo y prueba. Si usas Syspanel, recuerda que el puerto de acceso es el 2106, pero esto no afecta al funcionamiento del .htaccess en el servidor web.
Paso 6: Verificar que todo funciona
Después de todos los cambios, es hora de comprobar. Abre tu navegador en modo incógnito (para evitar caché del navegador) y visita:
- La URL principal (ejemplo:
https://www.tiendanueva.com). - Una página de producto.
- Una categoría.
- El panel de administración (
https://www.tiendanueva.com/admin123).
Si todo carga correctamente y no hay errores, perfecto. Si ves errores de tipo "Redirigiendo demasiadas veces" o "No se puede conectar", revisa los pasos anteriores.
Errores comunes y cómo solucionarlos
Error: "Redirigiendo demasiadas veces" (ERR_TOO_MANY_REDIRECTS)
Esto suele pasar por un conflicto entre HTTP y HTTPS. Revisa que domain y domain_ssl estén correctamente configurados y que el archivo .htaccess no tenga reglas de redirección duplicadas.
Error: "La página no funciona" o "500 Internal Server Error"
Suele ser por un error en el archivo parameters.php o por caché corrupta. Revisa el archivo y limpia la caché manualmente borrando el contenido de var/cache.
Error: "No se puede conectar a la base de datos"
Si cambiaste algo en parameters.php y no lo hiciste bien, PrestaShop no puede conectar. Revisa que las líneas de database_host, database_name, database_user y database_password sigan siendo las mismas.
Preguntas frecuentes (FAQ)
¿Puedo cambiar la URL sin perder el SEO?
Sí, si haces redirecciones 301 correctamente y mantienes la estructura de URLs (slugs) igual. El SEO se mantiene si las URLs antiguas redirigen a las nuevas sin errores.
¿Qué pasa si no tengo acceso al panel de administración?
Puedes hacer todos los cambios por FTP y base de datos. Es más complejo, pero se puede. Sigue los pasos 1, 2 con la opción B, y el paso 4 con las consultas SQL.
¿Cuánto tarda en propagarse el cambio de dominio?
La propagación DNS puede tardar entre 2 y 48 horas. Durante ese tiempo, algunos usuarios verán la tienda antigua y otros la nueva. No te preocupes, es normal.
¿Necesito cambiar algo en Google Search Console?
Sí, si cambias de dominio, debes añadir el nuevo dominio en Google Search Console y configurar el cambio de dirección. También actualiza tu sitemap.
¿Qué hago si uso Syspanel y no encuentro el gestor de archivos?
Entra por el puerto 2106, ve al apartado de "Archivos" o "Gestor de archivos". Si no lo encuentras, busca en la documentación de tu proveedor de hosting porque la interfaz puede variar.
Consejos finales para no liarla
- Haz una copia de seguridad antes de empezar. Siempre. Da igual que seas un experto.
- Cambia la URL primero en la base de datos y luego en el archivo de configuración. Si haces los dos a la vez y algo falla, no sabrás qué ha sido.
- No te olvides de las redirecciones 301. Es el error más común y el que más caro te sale a largo plazo.
- Prueba con un dispositivo móvil y un ordenador. Asegúrate de que la tienda funciona bien en ambos.
- Si te pierdes, contrata a un profesional. Cambiar la URL de PrestaShop no es difícil, pero si tu tienda tiene mucho tráfico o muchas personalizaciones, un error te puede costar dinero.
Cambiar la URL de tu tienda PrestaShop es un proceso delicado, pero siguiendo estos pasos al pie de la letra, lo tendrás resuelto en menos de una hora. Solo recuerda: paciencia, copia de seguridad y redirecciones 301. Con eso, tu tienda seguirá funcionando y tu SEO no se resentirá. ¡Manos a la obra!
