PrestaShop richiede determinate configurazioni lato server, i requisiti consigliati sono i seguenti:
- Sistema Operativo: Linux, Unix o Windows. Consigliamo distribuzioni Linux maggiormente supportate e documentate.
- Web Server: Apache Web Server 2.2 o versione superiore*
- PHP: dipende dalla versione di PrestaShop (vedere tabella).
- MySQL: ma versione minima è la 5.6
- Server RAM: più ne abbiamo, meglio è. 256MB è il minimo consigliato come memory_limit.
*) PrestaShop può funzionare anche con Nginx versione 1.0 o superiore, è consigliabile però la configurazione come reverse proxy. È possibile utilizzare anche lighttpd, ma è sconsigliato in quanto scarsamente supportato dalla community di PrestaShop e richiede configurazioni molto complesse per evitare problemi di compatibilità.
Attenzione: il mancato rispetto dei requisiti di sistema può essere alla base di diverse problematiche.
Come posso verificare se il mio Hosting rispetta i requisiti minimi?
PrestaShop mette a disposizione su GitHub un semplice Tool, scaricabile qui:
https://github.com/PrestaShop/php-ps-info/releases
Per effettuare la verifica:
- Scaricare il tool e scompattarlo
- Opzionale editare il file phppsinfo.php inserendo la proprio utente e password*
- Caricare il file: phppsinfo.php nella root del proprio hosting
- Aprire nel browser URL: https://tuodominio.com/phppsinfo.php dove tuodominio.com è il vostro nome di dominio.
- Inserire nome utente e password (se avete saltato il punto 3 è prestashop)
*Modificare le vochi seguenti:
const DEFAULT_PASSWORD = 'prestashop';
const DEFAULT_LOGIN = 'prestashop';
Inserendo al posto di PrestaShop un nome utente e una password di vostra scelta.
Requisiti PHP
PrestaShop Version | 5.6 | 7.0 | 7.1 | 7.2 | 7.3 | 7.4 | 8.0 | 8.1 | 8.2 | ≥ 8.3 |
---|---|---|---|---|---|---|---|---|---|---|
1.6.1.x* | Yes | Yes | Recommended version | No | No | No | No | No | No | No |
1.7.0 ~ 1.7.3 | Yes | Yes | Recommended version | No | No | No | No | No | No | No |
1.7.4 | Yes | Yes | Recommended version | No | No | No | No | No | No | No |
1.7.5 ~ 1.7.6 | Yes | Yes | Yes | Recommended version | No | No | No | No | No | No |
1.7.7 | No | No | Yes | Yes | Recommended version | No | No | No | No | No |
1.7.8 | No | No | Yes | Yes | Yes | Recommended version | No | No | No | No |
8.0~8.1 | No | No | No | Yes | Yes | Yes | Yes | Recommended version | No | No |
* la versione 1.6.X è compatibile a partire da PHP 5.2
A seconda della versione di PrestaShop in uso sarà neccessario utilizzare una versione PHP specifica, utilizzare una versione superiore porta a diversi problemi di compatibilità non sempre immediatamente visibili se non nei log ed è altamente sconsigliato.
Rispetto al passato con la versione 1.7 è più difficile aggiornare velocemente all’ultima versione, in quanto è in corso la migrazione a symfony framework e molti moduli di terze parti non riescono a mantenere il passo, quindi se utilizziamo PrestaShop siamo costretti a utilizzare versioni PHP spesso a fine vita o prive di supporto, è quindi importante disabilitare l’esenzione expose_php.
Cronologia delle versioni PHP
Versione PHP | Data di Rilascio | Fine Vita (EOL) |
---|---|---|
PHP 5.6 | 28 agosto 2014 | 31 dicembre 2018 |
PHP 7.0 | 3 dicembre 2015 | 3 dicembre 2018 |
PHP 7.1 | 1 dicembre 2016 | 1 dicembre 2019 |
PHP 7.2 | 30 novembre 2017 | 30 novembre 2020 |
PHP 7.3 | 6 dicembre 2018 | 6 dicembre 2021 |
PHP 7.4 | 28 novembre 2019 | 28 novembre 2022 |
PHP 8.0 | 26 novembre 2020 | 26 novembre 2023 |
PHP 8.1 | 25 novembre 2021 | 25 novembre 2024 |
PHP 8.2 | 8 dicembre 2022 | 8 dicembre 2025 |
PHP 8.3 | 23 novembre 2023 | 31 dicembre 2027 |
Estensioni PHP necessarie:
- CURL viene utilizzata per scaricare le risorse remote come moduli e pacchetti di localizzazione.
- DOM libreria necessaria per operare sui documenti XML
- Fileinfo utilizzata per identificare la tipologia di file caricati
- GD utilizzata per creare le miniature delle immagini
- Iconv utilizzata per la conversione delle diverse codifiche di caratteri
- Intl necessaria a visualizzare dati localizzati come le valute
- JSON utilizzata per gestire il formato JSON
- Mbstring mette a disposizione funzioni per la gestione di stringhe multibyte
- OpenSSL utilizzato per migliorare la sicurezza
- PDO utilizzato per connettersi al DataBase
- PDO (MySQL) utilizzato per connettersi al database MySQL
- SimpleXML utilizzata per la gestione dei file XML
- Zip necessaria per comprimere e espandere i files come moduli e pacchetti di localizzazione
Alcuni moduli di terze parti possono richiedere estensioni PHP aggiuntive per esempio il nostro modulo POS per Carta del Docente e 18 App richiede l’estensione PHP SOAP.
Configurazioni:
- allow_url_fopen enabled. Questa direttiva permette a PrestaShop di accedere ai file remoti, è indispensabile per i processi di pagamento, quindi è imperativo sia impostata su On.
Di seguito una porzione della configurazione “php.ini” necessaria:
extension = php_mysql.dll
extension = php_gd2.dll
allow_url_fopen = On
allow_url_include = Off
expose_php = Off
Cronologia delle Versioni di PrestaShop
Nella tabella seguente sono riportate tutte le versioni di PrestaShop, dalla 1.0 fino alle versioni più recenti, con le rispettive date di rilascio e di fine vita (End of Life, EOL). Questa cronologia è essenziale per comprendere l’evoluzione della piattaforma e per garantire l’uso di versioni supportate, che offrono maggiore sicurezza e funzionalità aggiornate.
Versione | Data di Rilascio | Fine Vita (EOL) |
---|---|---|
PrestaShop 1.0 | Agosto 2008 | Ottobre 2009 |
PrestaShop 1.1 | Novembre 2008 | Aprile 2011 |
PrestaShop 1.2 | Giugno 2009 | Aprile 2011 |
PrestaShop 1.3 | Marzo 2010 | Aprile 2011 |
PrestaShop 1.4 | Marzo 2011 | Dicembre 2016 |
PrestaShop 1.5 | Settembre 2012 | Giugno 2019 |
PrestaShop 1.6 | Marzo 2014 | Giugno 2019 |
PrestaShop 1.7 | Novembre 2016 | Luglio 2021 (fino alla 1.7.6) Ottobre 2023 (dalla 1.7.6 in poi) |
PrestaShop 8.x | Ottobre 2022 | (Non ancora stabilito, supporto continuo) |
PrestaShop 9.x | Previsto 2024 Versione Alpha 1 (6 Giugno 2024) | (Non ancora stabilito) |
Download PrestaShop: https://github.com/PrestaShop/PrestaShop/releases
Importanza di Evitare Versioni Non Supportate
È fondamentale non utilizzare versioni di PrestaShop che hanno raggiunto la fine del loro ciclo di vita (EOL). Le versioni non supportate non ricevono più aggiornamenti di sicurezza né miglioramenti delle funzionalità, esponendo il tuo sito e-commerce a rischi significativi di sicurezza e a possibili incompatibilità con nuovi moduli o temi. Utilizzare una versione supportata garantisce una maggiore stabilità, sicurezza e accesso a nuove funzionalità che possono migliorare l’esperienza del cliente e le operazioni di vendita.
Requisiti per lo Sviluppo di PrestaShop
Composer
PrestaShop utilizza Composer per gestire i suoi pacchetti.
NodeJS
PrestaShop utilizza NPM per gestire le dipendenze del frontend e Webpack per compilarle in asset statici. Hai bisogno solo di NodeJS 14.x, e NPM si occuperà di tutto il resto.
NVM
NVM è il Node Version Manager, che ti permette di passare rapidamente tra le versioni di NodeJS sul tuo computer. Sarà utile per passare tra le versioni di NodeJS necessarie per lo sviluppo del Back Office o del Front Office di PrestaShop (che utilizzano versioni diverse di NodeJS).