¡Buen día a los lectores del blog de Amasty! Hoy hablaré sobre un tema que nuestro equipo tenía muchas solicitudes: ¿cómo actualizar su tienda Magento correctamente?
Hemos estado hablando mucho sobre la importancia de actualizar el software; es crucial tanto para el software de su servidor como para la instalación de la nueva versión de Magento. Las actualizaciones periódicas de Magento le brindan no solo las nuevas funciones, sino también correcciones de seguridad, lo cual es muy importante para la seguridad de su tienda Magento.
Digamos que ves que tu versión de Magento necesita una actualización. Es difícil adivinar qué versión tienes ahora, pero esperamos que sea al menos la 1.4.2.0.
→ ¿Pensando en cómo empezar con la migración de Magento? Hable con nuestro experto, reserve una consulta gratuita o contrate a nuestros desarrolladores para migrar su M1 a M2.
1. Prepárese para la actualización de Magento
Para que el proceso sea más vívido, instalamos una tienda en Magento 1.4.2.0 con datos de muestra y la actualizaremos a 1.9.1.0, que es la última versión estable de Magento en el momento de escribir este artículo.
El sitio web está instalado en /home/mgtest/public_html , la base de datos está en localhost y se llama mgtest_magento . Entonces, si usa las instrucciones de este artículo, asegúrese de reemplazar estos valores con los suyos propios.
→ Actualiza tu Magento 2.3.0 a la última versión
2. Copia de seguridad completa de Magento
Esta regla se refiere no solo a la actualización de Magento, sino a cualquier cambio serio que vayas a aplicar en tu sitio web.
¡Haz una copia de seguridad de tu tienda Magento!
Este es un procedimiento esencial que lo salva de actualizaciones fallidas, fallas en el sitio, pérdida de datos y asegura que la actualización no lo lleve a la pared.
La variante más simple de la copia de seguridad de Magento se puede implementar usando estos dos comandos:
tar -czf ~/archivos-magento.tar.gz -C /home/mgtest public_html mysqldump --add-drop-table -h localhost -u mgtest -p mgtest_magento | gzip > ~/magento-db.sql.gz
No dude en leer un artículo detallado sobre la copia de seguridad de Magento.
En caso de que la actualización de su versión de Magento salga mal, puede revertir todo fácilmente:
cd /inicio/mgtest mv public_html public_html-BAK tar -xzf ~/archivos-magento.tar.gz gzip -dc ~/magento-db.sql.gz | mysql -h localhost -u mgtest -p mgtest_magento
3. Verifique los requisitos del sistema
Compruebe si su servidor se ajusta a los requisitos mínimos del sistema de la versión de Magento a la que se está actualizando. Es posible que desee echar un vistazo a la versión de PHP (se necesita 5.4.x o 5.5.x) y el valor memory_limit en php.ini en primer lugar.
Consulte los requisitos de la versión de PHP para las diferentes versiones de Magento (2.3.0, 2.3.1, 2.3.2, etc.) →
4. Crea una caja de arena
Nunca actualice el sitio web principal si no está 100% seguro de que todo va bien. Si no prueba la actualización en una caja de arena, no sabrá si el sitio web funcionará después de la actualización y cuánto tiempo llevará el proceso de actualización.
La actualización de su tienda puede requerir varias horas, y no tiene sentido cerrar la tienda electrónica principal durante todo el día laboral solo para descubrir que la actualización salió mal, se perdió el tiempo y todo lo que tiene que hacer es restaurar el sitio web a partir de una copia de seguridad. Además, recuerde que recuperarse de una copia de seguridad lleva más tiempo que hacer una copia de seguridad de sí mismo , así que cuente este tiempo.
Para verificar si la actualización se ejecutará sin problemas, hagamos una caja de arena que vamos a actualizar primero. Hemos creado una base de datos mgtest_staging vacía de antemano.
cd /inicio/mgtest mkdir public_html/puesta en escena tar -xzf ~/magento-files.tar.gz --strip-components=1 -C public_html/staging gzip -dc ~/magento-db.sql.gz | mysql -h localhost -u mgtest -p mgtest_staging
Ahora es el momento de configurar el sandbox :
- Edite la configuración de conexión de la base de datos en public_html/staging/app/etc/local.xml
- Vaya a la base de datos mgtest_staging , busque la tabla core_config_data y cambie la URL del sitio web. Digamos que la URL anterior era http://mgtest.local/ , luego la nueva será http://mgtest.local/staging/
- Si su tienda Magento usa reescrituras de Apache , agregue RewriteBase /staging / en public_html/staging/.htaccess
- Desactive la compilación en Sistema / Herramientas / Compilación
- Deshabilitar caché en Sistema / Administración de caché
Ahora el sandbox está listo para ser actualizado.
5. Actualización de la zona de pruebas de Magento
Ejecute los siguientes comandos en la consola:
cd /home/mgtest/public_html/puesta en escena chmod +x pera ./pera configuración de mago ./pera actualizar -f magento-core/Mage_All_Latest-stable chmod +x mago ./mage config-set estado_preferido estable ./mage actualizar-todos --force
Si el comando anterior no funciona, ejecute este:
./mage install http://connect20.magentocommerce.com/community Mage_All_Latest --force
Limpiar cache:
cd /home/mgtest/public_html/puesta en escena rm -fr var/cache var/session var/full_page_cache
Para finalizar la actualización de la versión de Magento, abra la página de inicio para que Magento actualice la base de datos. Este proceso puede ser largo, así que considere hacerlo con el siguiente comando:
cd /home/mgtest/public_html/puesta en escena php -f índice.php
6. Prueba, prueba, prueba
Compruebe cuidadosamente cómo está funcionando su sitio web. Vaya a los registros de Magento en /home/mgtest/public_html/staging/var/log y a los registros del servidor web en /var/log/httpd , /var/log/apache2 o /var/log/nginx según el kit de distribución y el servidor web que utiliza. Mire cuidadosamente a través de los registros para detectar cualquier posible error.
Nota: asegúrese de probar cuidadosamente el rendimiento de sus extensiones. Si actualiza a la versión más reciente y actualizada de Magento, aumenta la posibilidad de que algunas extensiones funcionen con errores o entren en conflicto entre sí, porque no todos los proveedores de extensiones de Magento prueban sus módulos inmediatamente después del lanzamiento.
7. Actualización principal de Magento
Si la investigación y las pruebas cuidadosas no revelaron ningún mal funcionamiento o si encontró cómo corregir los errores, ahora es el momento de actualizar el sitio web principal. Dado que el proceso de actualización de la versión de Magento y las pruebas lleva cierto tiempo, haga una nueva copia de seguridad del sitio web principal, ya que no desea recuperarse de una copia de seguridad anterior y perder los últimos cambios. Antes de realizar una copia de seguridad, cambie su sitio web al modo de mantenimiento y deshabilite cron.
toque /home/mgtest/public_html/maintenance.flag crontab -u mgtest -e
Guardar una copia de seguridad:
cd /inicio/mgtest tar -czf archivos-magento.tar.gz -C /home/mgtest public_html mysqldump --add-drop-table -h localhost -u mgtest -p mgtest_magento | gzip > ~/magento-db.sql.gz
Repita el procedimiento de actualización de Magento en su sitio web principal.
No recomendamos reemplazar el sitio web principal con la tienda sandbox , ya que en ese caso corre el riesgo de perder los datos que se cambiaron o agregaron durante la prueba.
¡Hecho! La última parte es desactivar el modo de mantenimiento y habilitar cron:
rm /home/mgtest/public_html/maintenance.flag crontab -u mgtest –e
¡Misión completada! Ahora su tienda está actualizada a la última versión estable de Magento.
Si ya ha actualizado a M2, puede usar nuestra extensión Mass Product Actions para una gestión de catálogo más conveniente.
¿Tiene alguna pregunta sobre el proceso de actualización de Magento? Bienvenido a la sección de comentarios. O comuníquese con nuestros especialistas, ellos pueden ayudarlo a actualizar Magento 2.2 y 2.3 a la última versión.
Actualización: en este momento, las instrucciones no funcionan porque el enlace http://connect20.magentocommerce.com/community no funciona y no pudimos encontrar el reemplazo en los documentos de Magento. Tan pronto como encontremos uno, actualizaremos el artículo.
Además, después de este proceso, puede utilizar el Servicio de optimización de Magento para mejorar el rendimiento de su sitio web.
Puedes encontrar más información sobre cómo actualizar la versión de Magento aquí .