Cómo cambiar la URL de PrestaShop en DirectAdmin sin errores
Cambiar la URL de tu tienda PrestaShop es una tarea que puede parecer compleja, pero con una guía clara y los pasos correctos, es un proceso que puedes realizar sin errores. En este artículo, te explicaremos de forma detallada y sencilla cómo modificar el dominio de tu PrestaShop alojado en un panel DirectAdmin. Cubriremos desde la preparación hasta la verificación final, incluyendo la solución de problemas comunes.
Este tutorial está diseñado para que puedas realizar el cambio de URL PrestaShop DirectAdmin de manera segura, evitando pérdidas de datos o caídas del sitio. Sigue cada paso con atención y, si te surge alguna duda, consulta la sección de preguntas frecuentes al final.
¿Por qué necesitarías cambiar la URL de tu PrestaShop?
Antes de comenzar, es bueno entender las razones más comunes para realizar este cambio:
- Migración de dominio: Has comprado un nuevo dominio más profesional o relevante para tu negocio.
- Cambio de entorno: Estás moviendo tu tienda de un subdominio (ej.
tienda.midominio.com) a un dominio principal (ej.midominio.com). - Corrección de errores: Tu tienda se instaló inicialmente con una URL incorrecta o con
httpy ahora quieres usarhttps. - Reestructuración: Tu marca ha cambiado de nombre o quieres unificar varias tiendas bajo un mismo dominio.
Sea cual sea tu motivo, el proceso es similar. Lo importante es realizarlo meticulosamente para que tu tienda siga funcionando sin problemas.
Preparación: Lo que necesitas antes de empezar
No te lances a hacer cambios sin preparación. Un pequeño error puede dejar tu tienda inaccesible. Sigue estos pasos previos:
1. Realiza una copia de seguridad completa
Este es el paso más importante. Una copia de seguridad te permitirá restaurar tu tienda si algo sale mal. Debes guardar dos cosas:
- Archivos del sitio: Todos los archivos de PrestaShop, que normalmente están en la carpeta
public_htmlodomains/tudominio.com/public_html. - Base de datos: La base de datos MySQL donde se almacenan productos, clientes, pedidos, etc.
Cómo hacerlo en DirectAdmin:
- Archivos: Ve a Gestor de Archivos, selecciona toda la carpeta de tu tienda, haz clic derecho y elige Comprimir. Descarga el archivo
.zipo.tar.gzresultante. - Base de datos: Ve a MySQL Management > PHPMyAdmin. Selecciona tu base de datos, haz clic en Exportar y elige el método rápido. Guarda el archivo
.sql.
[WARNING] No omitas este paso. Si algo falla, tu copia de seguridad es tu único salvavidas. Guarda los archivos en tu computadora local.
2. Identifica las URLs actual y nueva
Anota en un bloc de notas:
- URL actual: Por ejemplo,
http://midominioanterior.comohttp://localhost/prestashop. - URL nueva: Por ejemplo,
https://nuevodominio.com.
Asegúrate de incluir el protocolo (http:// o https://). Si tu nuevo dominio tiene SSL, usa https://.
3. Asegúrate de que el nuevo dominio esté configurado en DirectAdmin
El nuevo dominio debe estar añadido como un dominio adicional o como el dominio principal en tu cuenta de DirectAdmin. Si no lo has hecho:
- Ve a Gestor de Dominios en DirectAdmin.
- Añade el nuevo dominio y asegúrate de que apunte a la misma carpeta donde está instalado PrestaShop (o crea una nueva y luego mueve los archivos).
[TIP] Si vas a cambiar de un dominio a otro, puedes añadir el nuevo como "dominio adicional" y luego mover los archivos de la carpeta del antiguo a la del nuevo.
Paso a paso: Cómo cambiar la URL de PrestaShop en DirectAdmin
Ahora sí, manos a la obra. Sigue estos pasos en orden.
Paso 1: Modificar la base de datos de PrestaShop
La URL de tu tienda se guarda en la tabla ps_configuration (el prefijo ps_ puede variar si lo cambiaste durante la instalación). Debes actualizar dos valores clave.
-
Accede a PHPMyAdmin desde DirectAdmin (en la sección de MySQL).
-
Selecciona la base de datos de tu PrestaShop.
-
Haz clic en la pestaña SQL.
-
Ejecuta la siguiente consulta SQL, reemplazando las URLs por las tuyas:
UPDATE ps_configuration SET value = 'https://nuevodominio.com' WHERE name = 'PS_SHOP_DOMAIN'; UPDATE ps_configuration SET value = 'https://nuevodominio.com' WHERE name = 'PS_SHOP_DOMAIN_SSL';[INFO] Si tu tienda usaba
httpy ahora usashttps, asegúrate de incluir lasen el protocolo. Si no tienes SSL, usahttp://. -
También debes actualizar la URL en la tabla
ps_shop_url. Ejecuta:UPDATE ps_shop_url SET domain = 'nuevodominio.com', domain_ssl = 'nuevodominio.com', physical_uri = '/';El campo
physical_urisuele ser/a menos que tu tienda esté en una subcarpeta (ej./tienda/). Si es el caso, ajústalo.
Paso 2: Actualizar la configuración en los archivos de PrestaShop
Además de la base de datos, hay un archivo de configuración que también almacena la URL. Aunque PrestaShop moderno (1.7+) usa más la base de datos, es buena práctica revisarlo.
-
Ve al Gestor de Archivos de DirectAdmin.
-
Navega a la carpeta raíz de tu tienda (normalmente
public_htmlodomains/tudominio.com/public_html). -
Busca el archivo
app/config/parameters.php. -
Ábrelo para editarlo. Busca una línea similar a:
'PS_SHOP_DOMAIN' => 'antiguodominio.com', 'PS_SHOP_DOMAIN_SSL' => 'antiguodominio.com',Cámbialas por tu nuevo dominio.
[WARNING] Si no encuentras estas líneas, no te preocupes. No todos los archivos las tienen. Lo importante es la base de datos.
Paso 3: Forzar HTTPS (si tu nuevo dominio tiene SSL)
Si tu nueva URL usa https, debes asegurarte de que PrestaShop fuerce la conexión segura.
- Desde el panel de administración de PrestaShop (si aún puedes acceder), ve a Configurar > Parámetros de la tienda > General.
- En la sección Configuración de la tienda, activa la opción Activar SSL y Activar SSL en todas las páginas.
- Guarda los cambios.
Si no puedes acceder al panel, puedes hacerlo desde la base de datos:
UPDATE ps_configuration SET value = '1' WHERE name = 'PS_SSL_ENABLED';
UPDATE ps_configuration SET value = '1' WHERE name = 'PS_SSL_ENABLED_EVERYWHERE';
Paso 4: Limpiar la caché de PrestaShop
La caché puede almacenar la URL antigua y provocar errores. Límpiala de una de estas formas:
- Desde el panel de administración: Ve a Configurar > Parámetros avanzados > Rendimiento y haz clic en Limpiar la caché.
- Desde archivos: En el Gestor de Archivos, elimina el contenido de la carpeta
/var/cache(dentro de la raíz de tu tienda). No borres la carpeta, solo su contenido. - Usando FTP: Conéctate por FTP y elimina los archivos de
var/cache/devyvar/cache/prod.
Paso 5: Verificar el funcionamiento
Ahora viene la prueba de fuego. Accede a tu nueva URL desde un navegador en modo incógnito (para evitar caché del navegador).
- ¿La página carga correctamente? ¡Bien!
- ¿Ves imágenes rotas o enlaces antiguos? Esto indica que hay URLs absolutas hardcodeadas en el contenido (productos, categorías, CMS). Tendrás que actualizarlas manualmente o usar una herramienta de reemplazo en la base de datos.
- ¿Error de redirección o página en blanco? Revisa los pasos anteriores. Puede que la caché de DirectAdmin (si usas LiteSpeed) también necesite limpiarse.
[TIP] Para reemplazar URLs antiguas en toda la base de datos, puedes ejecutar una consulta SQL como esta (¡con cuidado!):
UPDATE ps_product SET description = REPLACE(description, 'http://antiguodominio.com', 'https://nuevodominio.com');Hazlo para todas las tablas que contengan texto (ps_category, ps_cms, etc.) o usa un módulo como "Search and Replace".
Solución de problemas comunes
A veces, a pesar de seguir los pasos, pueden surgir problemas. Aquí te damos soluciones rápidas.
Error "Redirecciones excesivas" o "Demasiadas redirecciones"
Esto suele ocurrir por un bucle entre http y https. Soluciones:
- Verifica que en la base de datos no tengas mezcladas URLs con y sin
www. - Asegúrate de que en el archivo
.htaccess(en la raíz de tu tienda) no haya reglas de redirección conflictivas. Puedes renombrarlo temporalmente a.htaccess_backuppara probar. - Si usas un CDN o proxy (Cloudflare), asegúrate de que la opción "SSL Flexible" no esté causando conflictos. Usa "Full" o "Full (Strict)".
La página se ve en blanco (pantalla blanca de la muerte)
Esto indica un error PHP. Para ver el error:
- Habilita la visualización de errores en PrestaShop. En el archivo
config/defines.inc.php, cambia_PS_MODE_DEV_atrue. - Revisa los logs de error de DirectAdmin en Gestor de Errores o en el archivo
error.logde tu dominio.
Las causas más comunes son:
- Error en la sintaxis de
parameters.php. - La base de datos no se actualizó correctamente.
- Falta de permisos en archivos o carpetas (deben ser 755 para carpetas y 644 para archivos).
Imágenes no cargan
Si las imágenes se ven rotas, es porque la URL de las imágenes está hardcodeada en la base de datos. Puedes regenerarlas desde el panel de administración:
- Ve a Configurar > Parámetros avanzados > Imágenes.
- Haz clic en Regenerar miniaturas.
Si eso no funciona, deberás hacer un reemplazo masivo en la tabla ps_image y ps_product usando SQL.
Preguntas Frecuentes (FAQ)
1. ¿Puedo cambiar la URL sin perder mis productos y clientes?
Sí, siempre que hagas una copia de seguridad y sigas los pasos correctamente. Los datos se mantienen intactos en la base de datos.
2. ¿Qué pasa si mi PrestaShop está en una subcarpeta (ej. /tienda)?
En ese caso, en la tabla ps_shop_url, el campo physical_uri debe ser /tienda/ (con barras al inicio y al final). También asegúrate de que la carpeta exista en tu nuevo dominio.
3. Después del cambio, no puedo acceder al panel de administración. ¿Qué hago?
Puedes forzar la URL de administración editando el archivo config/parameters.php y agregando (o modificando) la línea:
'PS_ADMIN_DIR' => 'nuevonombreadmin',
Luego accede a https://nuevodominio.com/nuevonombreadmin.
4. ¿Necesito cambiar algo en DirectAdmin además de la URL?
Sí, debes asegurarte de que el nuevo dominio esté apuntando a la misma carpeta donde está PrestaShop. Si usas SSL, también debes tener el certificado instalado para el nuevo dominio.
5. Mi tienda usa Syspanel (HestiaCP). ¿El proceso es diferente?
Si tu panel es Syspanel (HestiaCP), el proceso es muy similar. La principal diferencia es que el acceso a la base de datos y al gestor de archivos se hace a través del puerto 2106 (ej. https://tudominio.com:2106). Los pasos de modificación de la base de datos y archivos son idénticos.
6. ¿Puedo cambiar la URL de un dominio a otro sin que Google me penalice?
Si lo haces correctamente, no. Debes configurar redirecciones 301 desde la URL antigua a la nueva. PrestaShop suele hacerlo automáticamente si configuras bien el dominio, pero puedes añadir reglas en el .htaccess.
Conclusión
Cambiar la URL de tu PrestaShop en DirectAdmin no es un proceso mágico, pero con esta guía detallada y siguiendo los pasos al pie de la letra, puedes lograrlo sin errores. Recuerda siempre: copia de seguridad, paciencia y verificación. Si te encuentras con un problema, revisa la sección de solución de problemas o las FAQs.
Ahora que sabes cómo hacerlo, puedes migrar tu tienda a un nuevo dominio con total confianza. ¡Mucho éxito con tu ecommerce!
