Migrar Prestashop 1.6 o posteriores
Hola, me llegan correos de gente preguntándome como poder migrar su tienda online, es decir, su prestashop, creo que hay muchas dudas de como hacerlo, pero decir que migrar prestashop, es fácil y aquí os lo voy a explicar. A mi cuando empece con prestashop también me causo dolor de cabeza, migrar prestashop, pero bueno es como todo cuando ya lo sabes hacer es mucho mas fácil las siguientes veces. Así que sin mas os explicare paso a paso como migrar un prestashop de local a servidor o migrar un prestashop de servidor a local, También explicare en el caso de que sea un prestashop multienda a migrar prestashop multitienda.
Tutorial migrar Prestashop
En este tutorial haré una migración de un prestashop 1.6, pero este tutorial funciona perfectamente para migrar prestashop mas antiguos, sin ningún problema, ya que por ejemplo la estructura de base de datos en prestashop 1.5 y el 1.6 es exactamente la misma, por lo tanto migrar prestashop 1.5 y 1.6 es exactamente lo mismo.
Primero de todo, nos dirigimos a nuestro ftp y copiamos todos los archivos del Prestashop para migrarlos. Después de haber pasado todos los archivos (podría tardar unos minutos, dependiendo de la dimensión de tu tienda), nos dirigimos a la carpeta config de nuestra raíz de Prestashop y a continuación buscamos el archivo settings.inc.php.
En el archivo settings.inc.php tenemos que añadir los campos específicos para conectar a la nueva base de datos, es decir el nombre de la base de datos, el usuario, pasword… Aquí os dejo una imagen donde explica mejor como editarlo, podéis darle click y podréis verlo en pantalla completa.
Aquí os dejo también todo los detalles de cada define del archivo settings.inc.php
define(‘_DB_SERVER_’, ‘dominioservidor.com’); Es la dirección de nuestro servidor donde queremos migrar prestashop .
define(‘_DB_NAME_’, ‘prestashop’); El nombre de la base de datos del nuevo servidor.
define(‘_DB_USER_’, ‘user’); El nombre de usuario de la base de datos.
define(‘_DB_PASSWD_’, ‘pass’); La contraseña del usuario de la base de datos.
Una vez terminado con este archivo, exportamos la base de datos del antiguo Prestashop.
Aquí hay dos maneras de migrar prestashop, (la primera forma no la recomiendo, pero también funciona) la primera que voy a explicar es la que utilizaba siempre, cuando las tiendas que migraba eran pequeñas, Abrir el archivo exportado, es decir el .sql y buscaríamos dos campos que son el PS_SHOP_DOMAIN y el PS_SHOP_DOMAIN_SSL.
Como podéis ver en la imagen (pulsar para ampliar) lo que he hecho yo es buscar PS_SHOP_DOMAIN, el dominio que esta en azul subrayado lo sustituyo por el sitio nuevo. Con el siguiente campo haríamos lo mismo. Y ahora solamente tenemos que ir a nuestro mysql y importar el archivo.
La otra forma que es la que actualmente utilizo para migrar prestashop, para mi es mejor, no tienes que estar toqueteando el .sql. Lo unico que deberíamos hacer es importar la base de datos mysql en el nuevo servidor o donde quieres migrar prestashop.
Ahora ya podemos entrar al panel de administración (con la mismo carpeta de administración que estaba en local) y el mismo usuario de local.
Vamos a Preferencias -> SEO y URLsy buscamos el apartado Establecer enlace de la tienda.
Luego, reemplazamos (Dominio de tienda y Dominio SSL pos su nuevo dominio (newdomain.com).
Migrar Prestashop de servidor a localhost
Hay casos que queréis migrar prestashop de un servidor a localhost, entonces tendrías que ponerlos como en la imagen inferior
localhost en el dominio de la tienda y en el SSL y el directorio raíz pones la carpeta donde esta alojado prestashop y ya tendrías hecha la migración de tu prestashop a local.
Migrar Prestashop multitienda
Migrar Prestashop multitienda es parecido pero en vez de irte a seo y url’s, vamos a parametros avanzados-> multitienda, vamos a la tienda en concreto y cambiamos las url el domain y el ssl, y así con el resto de tiendas.
si fuera el caso de querer exportar una multitienda a localhost, tendríais que añadir el prefijo /prestashop1.5/. En mi caso las tiendas, solamente se diferenciaban por localhost/prestashop1.5/es y la otra localhost/prestashop1.5/en entonces solo tenia que borrar localhost del ssl y domain y poner el dominio actual y en directorio raíz poner solo /.
Después de esto tenéis que regenerar el htacces para ello, vamos a SEO & URLs y cambiamos rutas amigables a si o no depende como lo tengáis y con esto regeneraremos el htacces.
Actualización: puede ocurrir que la multitienda en el otro idioma no funcione, es debido a que las rutas amigables no están activadas, yo las he activado y me ha funcionado sin ningún problema.
Si necesitáis mas información respecto a Prestashop aquí
Si necesitáis ayuda con migrar Prestashop, comentar y sin ningún compromiso os ayudaré para poder migrar prestashop.
Saludos y espero que os haya servido de ayuda y podáis migrar prestashop.
pd: si sabéis de alguna mejor manera de migrar prestashop, no dudéis a comentar.
Hola:
He hecho un clon de mi tienda remota en local. El procedimiento ha sido
1. Copiar los archivos de la tienda en una carpeta local
2. Exportar la base de datos de la tienda en producción
3. Crear una base de datos local con phpMyAdmin de mi servidor MAMP
4. Importar la base de datos exportada desde remoto a local
5. Editar los datos de conexión con la base de datos
6. Cambiar en la tabla shop_url de la base de datos las url correspondientes y la carpeta en la que está la tienda
7. Borrar la caché
Pero cuando entro a login con http://localhost:8888/NombreCarpetaLocal/admin000xxx me lleva a http://localhost:8888/NombreCarpetaLocal/admin000xxx/index.php?controller=AdminLogin&token=XXXXXXXXXXXXXXXXXX y la pantalla está en blanco: no aparece el formulario de acceso.
¿Me puedes ayudar?
Que versión tienes de PrestaShop?
Que buen post de como migrar prestashop! todo bien fácil y sencillo, gracias!
Gracias Ramón! Me alegro que te vaya bien el tutorial de migrar PrestaShop
Muchas gracias por el tutorial para migrar prestashop 1.6!
Gracias a ti David! Espero que hayas podido migrar PrestaShop
Gracias David, funciona perfectamente despues de leer todos los comentarios! La verdad es que migrar prestashop me ha dado muchos dolores de cabeza, pero ahora ya esta todo perfecto
Cristobal, me alegro que te fuera bien el tutorial para hacer la migración de prestashop 1.6
Hola David
Me puedes ayudar tenemos comprado un servidor propio, y quería copiar mi pagina prestashop a nuestro servidor propio.
Me puedes echar una mano para hacerlo, aunque te tuviera que pagar.
Saludos Pedro
Ahora te envío un correo.
Hola. Ante todo gracias por tus aportaciones.
Tengo el siguiente problema. Hemos actualizado una tienda a multitienda la cual ya posee los productos, los cuales hereda de la tienda principal, aparte de su diseño y funcionalidad de los módulos. La tienda está ya completamente funcional y solo nos queda un último punto para ponerla en producción: los clientes.
La antigua tienda ya tiene unos 500 clientes registrados los cuales no queremos incomodarlos teniendo que volver a registrarse. No nos importan los mensajes ni los pedidos anteriores. Lo único que queremos es migrar los clientes y que estos no tengan problemas con su contraseña.
Hemos intentado hacer una exportación/importación desde el backoffice de nuestros clientes pero esa mierda no funciona. Aparte hemos visto un tutorial que explica como migrar los clientes desde PHPMyAdmin el cual te dice las tablas implicadas, pero tenemos el inconveniente de que estamos hablando de multitienda y por lo tanto las tablas implicadas cambian y no queremos meter la pata.
En fin, a ver si puedes ayudarnos y darnos un poco de luz por favor.
Muchísimas gracias de antemano.
Hola Joaquin,
Perdona por tardar no lo había visto.
Prueba a migrar las tablas que te comentan en el post, lo que todas las contraseñas llevan encriptación md5, deberías copiar la cookie key si no me equivoco, la encuentras en config/settings.inc.php, ese número debería coincidir con el de la web antigua para que se desencripten bien las contraseñas antiguas, sólo sería migrar las tablas y ya lo tendrías.
Saludos.
Hola David y gracias por tu auda y tu trabajo.
En mi caso no era una migracion sino que queria mover mi tienda de un directorio al raiz. Los pasos son muy parecidoa a los que has puesto en el tutorial:
1- Mover los archivos del directorio /prestashop/ al raiz /. Despues he borrado el directorio prestashop ya vació. 2- Cambiar en la base de datos en la tabla ps_shop_url el campo physical_uri de /prestashop/ a / y comprobar que el PS_SHOP_DOMAIN y el PS_SHOP_DOMAIN_SSL. estaban apuntando a mi web piz. 3- Borrar la cache de prestashop (borrando los archivos de /cache/smarty/compile. 4- He cambiado en el back office en SEO+URLs la dirección del raíz de /prestashop/ a /.
La cosa es que si intento acceder a mi tienda escribiendo en el navegador mi dominio, aparece la pagina en blanco, no carga nada, incluso que si intento acceder a mi tienda desde la pestaña «mi tienda» del back office se queda tambien en blanco .
Mi version de prestashop es la 1.6 y el dominio es xxxx
A ver si me puedes echar una mano. Muchas gracias y un saludo
Hola Jorge,
Si la verdad es que es parecido la migrar prestashop de una carpeta a otra, que la migración que he explicado.
Puedes activar el modo debug, así en la pantalla blanca te saldrá algún error y podemos ver lo que pasa. También regenera el htaccess que si no lo has generado pueda estar dando problemas.
Saludos y muchas gracias por comentar.
Buen día, he estado trabajando en Prestaashop en mi computadora en localhost, he terminado y lo pase a mi hosting, hice lo que se tenía que hacer para migrar prestashop que seria.
Acceder a la carpeta /config y edita el archivo settings.inc.php. y poner en las líneas
define(‘_DB_SERVER_’, ‘localhost’);
define(‘_DB_NAME_’, ‘xxxxxxxxxx);
define(‘_DB_USER_’, ‘xxxxxxxxxx’);
define(‘_DB_PASSWD_’, ‘xxxxxxxxxxxxxxxxxx’);
define(‘_DB_PREFIX_’, ‘ps_’);
Cambiar los valores al de mi hosting. LISTO
También se hizo lo siguiente:
Editar los registros PS_SHOP_DOMAIN y PS_SHOP_DOMAIN_SSL por el ahora dominio donde estarán alojados en el hosting, aquí probé poniendo antes del dominio http:// y www. o ambos juntos (http://www.), con www. no me funciono la tienda, ambos tampoco, si no le pondo nada más que el dominio si abre la página pero no carga las imagines de los productos, y le pongo http:// abre la página y carga todo bien (imágenes ilustraciones de productos y pagina).
Pero hay un problema al momento de irme a la ruta del backend o panel de administración después de logearme me regresa a la página de la tienda principal o frontend con un mensaje de error 404 en el cuerpo de la página.
También edite la table ps_shop_url donde los campos domain le puse el dominio .com de mi tienda al igual en el campo domain_ssl y en el campo phsycal_uri puse “/” ya que todo va estar en la raíz del dominio y no en una carpeta dentro del dominio.
También corrobore que en el nuevo hsoting se tengan los privilegios que piden.
• Archivos con permisos 644.
• Carpetas con permisos 755.
Tambein iva a vaciar el cache en la carpeta /tools/smarty/compile y /tools/smarty/cache
Pero estos aun no existen en prestashop 1.6 no se si porque está recién creada la página en mi localhost PC, por lo que pues no vacié carpeta ya que no existen.
Cheque en la BD la tabla ps_pagenotfound y esta no tiene valores aun, aunque algunos dicen que cuando se instala con algún cpanel o de manera limpia desde la web se crea en el campo request_uri se llena con el dto /admin que es la carpeta default del panel de administración de prestashop y en el campo http_refer la ruta del dominio donde está la carpeta INSTALL/index.php pero en mi prestashop pues no aparece nada de eso la table ps_pagenotfound está limpia.
Mi pregunta entonces es.
¿Se hizo bien la migración en prestashop 1.6?
¿Por qué no puedo entrar al panel de administración de prestshop 1.6?
¿Están bien todos los valores, ya que si cambio algún valor?
Hola Netcom,
Para migrar prestashop de local a servidor, lo que realizo es copiar todos los archivos y subirlos al hosting, como tu bien dices modifico el archivo settings.inc.php con los datos correctos, ahora voy a mi phpmyadmin y copio exactamente igual la base de datos de local a servidor. Ahora mismo si pones la url de tu panel de administración ya te funcionara el panel de administración ahora solamente te tienes que redirigir a seo y urls y vamos al apartado Establecer enlace de la tienda y alli modificamos el dominio de la tienda, en un principio estos dos campos son los que tocan los registros ps_shop_domain y ps_shop_domain_ssl, yo es todo lo que he realizado siempre y sin ningún problema, si no le consiguiera podría ayudarle a migrar prestashop.
Espero que le sea de ayuda.
Si mira este es el sitio
xxxxxx.com se puede navegar bien ya me carga las imágenes, y todo incluso se hace responsivo 100% el theme del sitio con tablet, o si entras por móvil (celular), el problema es el panel de administración si se muestra y te pide logeo pero una vez que te logeas xxxxx.com/admin6825 me regresa al frontend con una página en el cuerpo de mensaje con la leyenda Error 404.
Exactamente, no se cual es el problema, en principio migrar prestashop, no ha habido ningún problema. Puede ser por el htacces, que tengas una redirección o otro problema. Al no tener los archivos no puedo ayudarte, pero volvería hacer los pasos de nuevo, que te he comentado anteriormente, por si fuera algún problema tonto de haberte dejado algo. Si no te funcionara migrar prestashop dime algo y miramos la manera que pueda ayudarte.
Saludos.
primero que todo muchas gracias por el tutorial,
-solo una consulta ¿que consideraciones debo tener si deseo traerla desde el hosting a una replica a localhost?
he seguido otras guias, y no me funcado correctamente.
de todas formas intentare con la edicion del sql que mencionas.
muchas gracias
Recientemente he encontrado una manera mas fácil de migrar prestashop 1.6. He actualización el articulo para que resulte mas fácil migrar prestashop, y he incluido un apartado donde migrar prestashop de servidor a localhost, espero que te funcione.
Saludos.
Muchas gracias por el tutorial sobre como migrar prestashop.
Me ha servido de ayuda para poder migrar mi tienda de prestashop 1.5, ya que estos pasos también funcionan.
Sigue así! Muy buena pagina.
Saludos:)
Muchas gracias Raúl por tu comentario, me alegro que te haya servido para migrar prestashop 1.5, siempre es de agradecer estas publicaciones, ya que son motivadoras para seguir escribiendo.
Saludos