SmythSys IT Consulting

Hacer una copia local de tu Prestashop para poder trabajar con él sin estar en producción

Ayer nos hizo una petición un amigo, cómo hacer una copia de un Prestashop activo para poder trabajar con él. Porque si, lo puedes poner en mantenimiento, pero entonces los clientes dejan de verlo y, si va a tardar (por ejemplo un cambio de plantilla) o no estás seguro si lo que vas a hacer funcionará, no es buena idea.
Consejo: No hagáis cambios en producción (y menos en viernes).

Nosotros solemos trabajar sobre copias de las webs, en nuestros servidores o en otros directorios del hosting del cliente. Este método sirve para ambos casos.  También para mover tu web a otro hosting.
Si no tenéis otro servidor, y vuestro hosting está limitado de espacio u otros recursos (los Prestashop “tiran” mucho de recursos) podéis instalar un WAMP en vuestro ordenador y seguir estos pasos. Eso si, entonces no podréis trabajar desde varios ordenadores o mostrarlo fácilmente al cliente al ser una instalación local.

Prestashop

Pasos:

  1. Haz una copia de los ficheros (por FTP) y de la base de datos (por phpMyAdmin o lo que te deje el hosting). No sólo porque vas a necesitarla, sino que siempre es una buena costumbre antes de modificar nada.
    Nosotros SIEMPRE hacemos una copia de seguridad antes. Así puedes volver atrás sin problemas.
  2. Si gestionas otro servidor puedes crear otro hosting con un subdominio (por ejemplo prueba.tudominio.com) y subir ahí los ficheros.
    Si quieres hacerlo en tu hosting actual, crea otro subdirectorio en la raíz y llámalo, por ejemplo DesarrolloX8rTL. Los dígitos del final son una manía de informáticos por hacer un poco más difícil que entre “gente no deseada”.
  3. Sube los ficheros a ese directorio o al nuevo hosting.
  4. Crear en el hosting que estés usando (el nuevo o el actual) una nueva base de datos. Llámala como quieras desarrollo_web por ejemplo.
  5. Importa la base de datos que salvaste, la copia de seguridad, a esta nueva base de datos. Ya tienes una copia de la información de la web en otra base de datos.
  6. Ahora CUIDADO. Si entras en la web de desarrollo (tudominio.com/desarrollo_web) está apuntando a la base de datos antigua. Esto es un fallo que hemos cometido todos. Te pones a trabajar haciendo cambios y se hacen en la web original, porque la copia está apuntando a la base de datos original. Repito CUIDADO.
    Para solucionar esto tienes que ir al directorio config de la copia y editar el fichero settings.inc.php. Ahí verás un campo que pone define(‘_DB_NAME_’, ‘XXX’) .
    Cambia ese XXX por el nombre de tu nueva base de datos, la de desarrollo. Si has creado la base de datos en otro servidor tendrás que modificar el Server también…pero eso depende de cada caso. En principio sólo el DB_NAME.
    Guarda los cambios.
  7. Ahora si intentas entrar en la web no funcionará, pero si podrás (seguramente) entrar en el backend (tudominio.com/adminXXXX donde XXXX son unos caracteres que cambian en cada instalación).
    Esto es porque hay que decirle a Prestashop que tiene otro directorio.
    Entra en el backend con el usuario y contraseña originales (ten en cuenta que todo eso es igual al ser una copia).
    Ve a Preferencias>Seo+URLs y baja hasta el apartado donde pone Dominio de la tienda y Directorio raíz.
    Ahora los cambios dependen del procedimiento usado para hacer la copia:
    -Cambia Dominio de la tienda si has creado otro hosting, por ejemplo el prueba.tudominio.com de antes. Si estás en el mismo hosting (en un subdirectorio) no lo toques.
    -En Directorio raíz tienes que poner el directorio de la copia. Si  lo has puesto en el raíz de otro dominio no lo cambies. Si lo has creado en el mismo hosting pero en un subdirectorio, pon el subdirectorio (por ejemplo /desarrollo_web/).
    Guarda los cambios (pero no salgas del backend).
  8. Prueba a entrar en el frontend de la copia. Por ejemplo http://prueba.tudominio.com o http://tudominio.com/desarrollo_web). Debería entrar.
    Si no entra vuelve al backend y limpia caché.
  9. Ahora para verificarlo, pon la copia en mantenimiento y vete a la original. Si la original no ha cambiado está todo bien, estás en una copia y puedes actualizar, modificar o hacer lo que quieras.
    Si no revisa los pasos.

Con esto ya debería estar. Si no puedes hacer el paso 7 porque no entras en el backend, tendrás que cambiar las url en la base de datos. Eso lo explicaremos en otro artículo.

Esperamos que os sea útil.

 

 

Deja un comentario

Resumen de nuestra Política de Privacidad

  • Responsable: SmythSys IT Consulting SLNE.
  • Finalidad: Gestionar y moderar los comentarios.
  • Legitimación: Necesitas dar tu consentimiento para publicar un comentario.
  • Destinatarios: Tus datos se alojan en los servidores de OVH.
  • Derechos: Tienes derecho a acceder, rectificar, limitar y suprimir los datos en la dirección del responsable (en nuestra política de privacidad).