Requisitos del servidor para Prestashop 1.7

Compartimos un aporte del usuario selectshop.at de la Comunidad de Prestashop, donde nos comenta una posible configuración mínima del servidor para Prestashop 1.7

Los siguientes requisitos están testeados en producción para tiendas que tienen desde 50 a 20 mil productos. Para tiendas con 20 mil productos es mejor usar un servidor dedicado o un vps.

La versión de PHP mínima para funcionar correctamente es: PHP 5.6.30. No necesitas accelerators, es mejor usar fpm-php + opcache + fast-cgi + ngnix proxied.

Configuración del servidor recomendada para Prestashop 1.7

  • magic_quotes_gpc = off
  • memory_limit = 512M
  • max_execution_time = 300
  • max_input_time = 300
  • upload_max_filesize = 20M
  • post_max_size = 20M
  • max_input_vars = 10000
  • allow_url_fopen = on – Con esto activado, usted podrá importar imágenes y otros accesos externos.
  • safe_mode = off
  • cURL – instalada para ti, por ejemplo, Paypal y otros servicios web funcionan sin problemas.
  • mod_rewrite = instalado y activado
  • mod_security = off
  • al menos php 5.6.x + php-fpm + opcache con sus propios valores (al final de la entrada más información), o bien php 7, funciona más rápido.
  • JSON = ON
  • ctype = ON
  • mySQL = INNODB (myIsam no funciona correctamente)
  • php.ini del servidor debe incluir date.timezone
  • Open SSL 1.0.2  o superior
  • Servidores Linux (Prestashop no es recomendable para servidores de windows)
  • cageFS y otro Firewall técnico en el servidor configurado correctamente para que el backoffice no sea extremadamente lento el bloquear los servicios externos que usa Prestashop

Opcache Optimización 


opcache.revalidate_freq = 0
opcache.validate_timestamps = 0 (comentar esto en tu entono de desarollo)
opcache.max_accelerated_files = 7963
opcache.memory_consumption = 192
opcache.interned_strings_buffer = 16
opcache.fast_shutdown = 1

Además, es importante tener permisos automáticos para crear/cambiar/eliminar ficheros y carpetas  (mod suExec / suPHP). Por lo tanto, tengo cuidado de que todos los scripts internos y usuarios (desde el servidor) tengan acceso completo a los ficheros y carpetas automáticamente, mientras que los accesos externos tienen acceso de solo lectura, sin la necesidad de cambiar estos parámetros automáticamente.

Este TIP proporcionado por la comunidad es temporal, se puede ver siempre actualizado y corregido de fallos en el siguiente enlace:

https://www.prestashop.com/forums/topic/633857-server-requirements-for-ps-17/

Documento testeado hasta Prestashop 1.7.2.4

Actualización del artículo para Prestashop 1.7.3.X y superior.

Recomendado trabajar al menos con PHP 7.0 (mejor rendimiento con fpm-php + opcache + ngnix proxied)

Obviamente puede seguir funcionando con la versión 5.6.3x de PHP, pero existirá una pérdida de rendimiento. Mejor usar las últimas versiones de PHP y usar mariaDB en vez de MySQL

Parámetros recomendados de configuración para el servidor:

  • magic_quotes_gpc = off
  • memory_limit = 512M
  • max_execution_time = 300
  • max_input_time = 300
  • upload_max_filesize = 20M
  • post_max_size = 20M
  • max_input_vars = 10000
  • allow_url_fopen = on – Con esto activado, usted podrá importar imágenes y otros accesos externos.
  • safe_mode = off
  • cURL – instalada para ti, por ejemplo, Paypal y otros servicios web funcionan sin problemas.
  • mod_rewrite = instalado y activado
  • mod_security = off
  • JSON = ON
  • ctype = ON
  • mySQL = INNODB (myIsam no funciona correctamente)
  • php.ini del servidor debe incluir date.timezone
  • Open SSL 1.0.2  o superior
  • Servidores Linux (Prestashop no es recomendable para servidores de windows)
  • cageFS y otro Firewall técnico en el servidor configurado correctamente para que el backoffice no sea extremadamente lento el bloquear los servicios externos que usa Prestashop

Opcache Optimización 


opcache.revalidate_freq = 0
opcache.validate_timestamps = 0 (comentar esto en su entorno de desarrollo)
opcache.max_accelerated_files = 7963
opcache.memory_consumption = 192
opcache.interned_strings_buffer = 16
opcache.fast_shutdown = 1