PrestaShop és un dels CMS per a botigues online més populars. Disposa de multitud de complements, mòduls i temes per personalitzar i afegir noves funcionalitats a la nostra botiga. 

 

Com és habitual, a mesura que treballem amb l'aplicació, ens poden aparèixer missatges d'error.

 

A continuació expliquem com resoldre alguns dels errors més comuns del PrestaShop.

 

Maximum execution time exceeded

Request entity too large

Advertència de nombre màxim de camps

Error en accedir a l'administració

Warning Bad Request

Pàgina en blanc

 

1.- Maximum execution time exceeded

Un error molt habitual mentre treballem amb el PrestaShop és el de temps d'execució superat. Aquest error es produeix quan estem executant algun procés que dura més temps del que està configurat en el PHP de l'allotjament. 

 

El missatge d'error és similar al següent:

 

"Fatal error: Maximum execution time of 10 seconds exceeded in /usr/home/example.com/web/tools/smarty/sysplugins/smarty_internal_cacheresource_file.php on line 180"

 

En aquest cas, podem solucionar-ho augmentant el temps d'execució des de l'apartat Configurar PHP, dins el Panell de control de l'allotjament.

 

2.- Request entity too large

Quan pugem un tema o estem fent alguna operació amb arxius de certa mida, ens pot aparèixer una finestra amb l'error "Request entity too large".

 

Aquest error és causat per la limitació del valor PHP post_max_size. Ho corregim accedint al Panell de control de l'allotjament, a l'apartat Configurar PHP, i augmentem el paràmetre del post_max_size.

 

3.- Advertència de nombre màxim de camps

Si treballem amb formularis i també algunes eines de traducció poden mostrar un missatge d'advertència com el següent:

 

Warning, your PHP configuration limits the maximum number of fields to post in a form: 1000 for max_input_vars.
Please ask your hosting provider to increase the this limit to 1318 at least or edit the translation file manually.

 

De la mateixa manera que els anteriors errors explicats, aquest també es tracta d'un paràmetre PHP que podem augmentar des del Panell de control de l'allotjament, a l'apartat Configurar PHP. Augmentem el paràmetre max_input_vars.

 

4.- Error en accedir a l'administració

Un error que ens podem trobar en intentar accedir a l'administració és el següent:

 

Warning: tempnam(): open_basedir restriction in effect. File(/tmp) is not within the allowed path(s): (/usr/home/example.com/:/home/example.com/:/usr/home/services/:/usr/share/php/) in /usr/home/example.com/web/classes/PrestaShopAutoload.php on line 151 

 

Aquest error és degut al fet que el PrestaShop intenta accedir a un directori el qual no hi té permís. És un error en el fitxer PrestaShopAutoload.php i ho podem corregir substituint l'arxiu per la del repositori oficial. https://github.com/platformsh/fwp-prestashop/blob/master/classes/PrestaShopAutoload.php

 

Connectem per FTP, entrem en el directori classes, i renombrem, primer, l'arxiu PrestaShopAutoload.php. Després, pugem l'arxiu que hem descarregat i ja hauríem de poder accedir a l'administració del PrestaShop.

 

5.- Warning Bad Request

L'aplicació del Prestashop pot mostrar el missatge d'avís informatiu sobre el mod_security com el següent:

 

Apache mod_security is activated on your server. This could result in some Bad Request errors.

 

El mod_security és un mòdul de seguretat que està instal·lat en el servidor. Des del Panell de control de l'allotjament, a l'apartat Firewall, el podem desactivar. Tot i així, és possible que el PrestaShop segueixi mostrant el missatge, ja que, tot i desactivat, segueix estant instal·lat en el servidor.

 

En aquest cas, si el tenim desactivat des del Panell de control, ja no hem de tenir en compte aquest avís.

 

6.- Pàgina en blanc

A vegades, el PrestaShop ens pot quedar en blanc i no mostrar res. La principal causa d'aquest comportament és quan l'aplicació necessita ampliar el límit de memòria. Podem ampliar aquest paràmetre de PHP des del Panell de control de l'allotjament, a l'apart Configurar PHP.

 

Una manera per poder identificar l'error que està causant la pàgina en blanc en el PrestaShop, és habilitar el mode DEBUG. El podem activar editant el fitxer defines.inc.php dins la carpeta config on tinguem instal·lat el PrestaShop.

 

Modifiquem la línia:

define('_PS_MODE_DEV_', false);

per 

define('_PS_MODE_DEV_', true);

 

D'aquesta manera el PrestaShop mostra els missatges d'error que es produeixin en lloc de quedar-se en blanc. Ens pot ser molt útil alhora d'intentar identificar l'origen de l'error.

 

 

Per a més informació, podeu contactar amb nosaltres.