E-commerce · 21 min read · Oct 14, 2025
Come installare PrestaShop su Rocky Linux 9

PrestaShop è un’applicazione web di e-commerce open-source scritta utilizzando il framework Symfony PHP. Ti consente di progettare, costruire e ospitare un negozio online per vendere prodotti, ricevere pagamenti e gestire tutti gli aspetti correlati. È utilizzato da oltre 300.000 siti, rendendolo una delle piattaforme di e-commerce più popolari. Supporta moduli che ti consentono di estendere ulteriormente la sua funzionalità. Puoi personalizzarlo utilizzando vari temi di alta qualità. Offre modelli personalizzabili, gateway di pagamento sicuri, gestione dell’inventario e strumenti SEO-friendly per ottimizzare il posizionamento nei motori di ricerca.
In questo tutorial, imparerai come installare Prestashop su un server Rocky Linux 9.
Prerequisiti
- Un server che esegue Rocky Linux 9 con un minimo di 1 GB di RAM.
- Un utente non root con privilegi sudo.
- Un Nome di Dominio Completo (FQDN) come
prestashop.example.comche punta al tuo server. - Un account SMTP con un servizio email come Amazon SES o Mailgun.
- Tutto è aggiornato.
$ sudo dnf update - Alcuni pacchetti essenziali sono necessari per il tutorial e per far funzionare Prestashop. Alcuni di questi saranno già presenti sul tuo server.
$ sudo dnf install wget curl nano unzip yum-utils policycoreutils-python-utils -y
Passo 1 - Configurare il Firewall
Il primo passo è configurare il firewall. Rocky Linux utilizza Firewalld Firewall. Controlla lo stato del firewall.
$ sudo firewall-cmd --state
running
Il firewall funziona con diverse zone, e la zona pubblica è quella predefinita che utilizzeremo. Elenca tutti i servizi e le porte attive sul firewall.
$ sudo firewall-cmd --permanent --list-services
Dovrebbe mostrare il seguente output.
cockpit dhcpv6-client ssh
Consenti le porte HTTP e HTTPS.
$ sudo firewall-cmd --permanent --add-service=http
$ sudo firewall-cmd --permanent --add-service=https
Controlla nuovamente lo stato del firewall.
$ sudo firewall-cmd --permanent --list-services
Dovresti vedere un output simile.
cockpit dhcpv6-client http https ssh
Ricarica il firewall per abilitare le modifiche.
$ sudo firewall-cmd --reload
Passo 2 - Installare Nginx
Rocky Linux 9 viene fornito con una versione più vecchia di Nginx. Per installare l’ultima versione, devi scaricare il repository ufficiale di Nginx.
Crea e apri il file /etc/yum.repos.d/nginx.repo per la modifica.
$ sudo nano /etc/yum.repos.d/nginx.repo
Incolla il seguente codice al suo interno.
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
Una volta terminato, salva il file premendo Ctrl + X e inserendo Y quando richiesto.
Installa Nginx.
$ sudo dnf install nginx -y
Verifica l’installazione.
$ nginx -v
nginx version: nginx/1.24.0
Abilita e avvia il servizio del server Nginx.
$ sudo systemctl enable nginx --now
Controlla lo stato del servizio.
$ sudo systemctl status nginx
? nginx.service - nginx - high performance web server
Loaded: loaded (/usr/lib/systemd/system/nginx.service; enabled; preset: disabled)
Active: active (running) since Sat 2023-11-25 10:58:03 UTC; 5s ago
Docs: http://nginx.org/en/docs/
Process: 4220 ExecStart=/usr/sbin/nginx -c /etc/nginx/nginx.conf (code=exited, status=0/SUCCESS)
Main PID: 4222 (nginx)
Tasks: 2 (limit: 10841)
Memory: 1.9M
CPU: 9ms
CGroup: /system.slice/nginx.service
??4222 "nginx: master process /usr/sbin/nginx -c /etc/nginx/nginx.conf"
??4223 "nginx: worker process"
Apri l’indirizzo IP del tuo server nel tuo browser web. Dovresti vedere la seguente pagina, il che significa che il tuo server è attivo e funzionante.

Passo 3 - Installare PHP e le estensioni
Rocky Linux 9 viene fornito con PHP 8.1 per impostazione predefinita. Per rimanere sempre sull’ultima versione di PHP o se desideri installare più versioni di PHP, dobbiamo utilizzare il repository REMI.
Il primo passo è ottenere il repository Epel.
$ sudo dnf install epel-release -y
Successivamente, installa il repository Remi.
$ sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-9.rpm
Controlla i flussi PHP disponibili.
$ dnf module list php -y
Name Stream Profiles Summary
php 8.1 common [d], devel, minimal PHP scripting language
Remi's Modular repository for Enterprise Linux 9 - x86_64
Name Stream Profiles Summary
php remi-7.4 common [d], devel, minimal PHP scripting language
php remi-8.0 common [d], devel, minimal PHP scripting language
php remi-8.1 common [d], devel, minimal PHP scripting language
php remi-8.2 common [d], devel, minimal PHP scripting language
php remi-8.3 common [d], devel, minimal PHP scripting language
Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled
La versione predefinita è 8.1. Al momento della scrittura di questo tutorial, Prestashop è compatibile con PHP 8.1. Pertanto, abilita il repository PHP 8.1 di Remi.
$ sudo dnf module reset php -y
$ sudo dnf module enable php:remi-8.1
Installa PHP e le sue estensioni richieste da Prestashop.
$ sudo dnf install php php-bcmath php-cli php-curl php-common \
php-fpm php-gd php-gmp php-intl php-mbstring \
php-mysql php-opcache php-xml php-zip -y
Controlla la versione di PHP installata.
$ php --version
PHP 8.1.26 (cli) (built: Nov 21 2023 21:53:48) (NTS gcc x86_64)
Copyright (c) The PHP Group
Zend Engine v4.1.26, Copyright (c) Zend Technologies
with Zend OPcache v8.1.26, Copyright (c), by Zend Technologies
Abilita e avvia il servizio PHP-FPM.
$ sudo systemctl enable php-fpm --now
Controlla lo stato del servizio.
$ sudo systemctl status php-fpm
? php-fpm.service - The PHP FastCGI Process Manager
Loaded: loaded (/usr/lib/systemd/system/php-fpm.service; enabled; preset: disabled)
Active: active (running) since Sat 2023-11-25 12:54:31 UTC; 2s ago
Main PID: 6160 (php-fpm)
Status: "Ready to handle connections"
Tasks: 6 (limit: 10841)
Memory: 15.2M
CPU: 56ms
CGroup: /system.slice/php-fpm.service
??6160 "php-fpm: master process (/etc/php-fpm.conf)"
??6161 "php-fpm: pool www"
??6162 "php-fpm: pool www"
??6163 "php-fpm: pool www"
??6164 "php-fpm: pool www"
??6165 "php-fpm: pool www"
Passo 4 - Installare Percona MySQL Server
Prestashop richiede un server di database MySQL per l’archiviazione dei dati. Ma invece di installare MySQL, installeremo il server MySQL Percona. Funziona come un sostituto diretto di MySQL e offre più funzionalità e sicurezza.
Il primo passo è installare il repository di rilascio di Percona per Rocky Linux.
$ sudo dnf install -y https://repo.percona.com/yum/percona-release-latest.noarch.rpm
Se ricevi il seguente errore, puoi ignorarlo in sicurezza e procedere ulteriormente poiché non influisce sull’installazione. La chiave GPG verrà comunque importata successivamente.
error: can't create transaction lock on /var/lib/rpm/.rpm.lock (Resource temporarily unavailable)
error: /etc/pki/rpm-gpg/RPM-GPG-KEY-Percona: key 1 import failed.
Una volta installato il repository, configura il repository del server Percona per MySQL 8.0 emettendo il seguente comando.
$ percona-release setup ps80
Il comando sopra chiede se desideri disabilitare il modulo MySQL predefinito. Inserisci y per procedere. Disabiliterà il modulo di installazione di MySQL e abiliterà il modulo MySQL di Percona.
Installa il server Percona per MySQL 8.0.
$ sudo dnf -y install percona-server-server
Questo installerà il server e il client Percona per MySQL, che sono i pacchetti di base di cui hai bisogno per ora.
Verifica l’installazione.
$ mysql --version
mysql Ver 8.0.34-26 for Linux on x86_64 (Percona Server (GPL), Release 26, Revision 0fe62c85)
Avvia il servizio MySQL.
$ sudo systemctl start mysqld
Controlla lo stato del servizio MySQL.
$ sudo systemctl status mysqld
? mysqld.service - MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; preset: disabled)
Active: active (running) since Sun 2023-11-26 06:25:37 UTC; 7s ago
Docs: man:mysqld(8)
http://dev.mysql.com/doc/refman/en/using-systemd.html
Process: 6522 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
Main PID: 6598 (mysqld)
Status: "Server is operational"
Tasks: 39 (limit: 10841)
Memory: 486.8M
CPU: 8.131s
CGroup: /system.slice/mysqld.service
??6598 /usr/sbin/mysqld
Nov 26 06:25:28 prestashop.example.com systemd[1]: Starting MySQL Server...
Nov 26 06:25:37 prestashop.example.com systemd[1]: Started MySQL Server.
Percona genera una password temporanea per root durante l’installazione. Ottieni quella password utilizzando il seguente comando.
$ sudo grep "temporary password" /var/log/mysqld.log
2023-11-26T06:25:33.316696Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: (sDeLSgjs7pI
Accedi alla shell di MySQL.
$ sudo mysql -u root -p
Esegui la procedura guidata di configurazione della sicurezza di MySQL.
$ sudo mysql_secure_installation
Inserisci la password di root quando richiesto.
Securing the MySQL server deployment.
Enter password for user root:
La password essendo temporanea è già scaduta e ti verrà chiesto di impostare una nuova password di root. Scegli una password forte per l’account root. La tua password dovrebbe soddisfare i requisiti attuali della politica delle password, il che significa che dovrebbe avere un carattere minuscolo, un carattere maiuscolo, un numero e un carattere speciale.
The existing password for the user account root has expired. Please set a new password.
New password:
Re-enter new password:
Successivamente, verrà mostrata la forza della password e ti verrà chiesto se desideri cambiarla. Digita N per procedere.
The 'validate_password' component is installed on the server.
The subsequent steps will run with the existing configuration
of the component.
Using existing password for root.
Estimated strength of the password: 100
Change the password for root ? ((Press y|Y for Yes, any other key for No) : N
... skipping.
Digita Y per rimuovere gli utenti anonimi.
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.
Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y
Success.
Digita Y per vietare l’accesso remoto a root.
Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y
Success.
Digita Y per rimuovere il database di test.
By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y
- Dropping test database...
Success.
- Removing privileges on test database...
Success.
E infine, digita N per ricaricare le tabelle di privilegi.
Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y
Success.
All done!
Questo è tutto. La prossima volta che desideri accedere alla shell di MySQL, utilizza il seguente comando e inserisci la password di root quando richiesto.
$ sudo mysql -u root -p
Riceverai il seguente prompt della shell di MySQL.
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 16
Server version: 8.0.34-26 Percona Server (GPL), Release 26, Revision 0fe62c85
Copyright (c) 2009-2023 Percona LLC and/or its affiliates
Copyright (c) 2000, 2023, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
Digita exit per uscire dalla shell.
Passo 5 - Configurare Percona MySQL Server
Accedi alla shell di MySQL.
$ sudo mysql -u root -p
Crea un nuovo database MySQL, un utente del database e una password per la tua installazione di Prestashop.
mysql> CREATE DATABASE prestashop COLLATE utf8mb4_general_ci;
mysql> CREATE USER 'prestauser'@'localhost' IDENTIFIED BY 'Your_password2';
mysql> GRANT ALL PRIVILEGES ON prestashop.* TO 'prestauser'@'localhost';
Sostituisci prestashop, prestauser e yourpassword con le credenziali di tua scelta. Scegli una password forte e assicurati che segua la politica delle password come descritto sopra.
Flush dei privilegi per assicurarti che siano salvati nella sessione corrente.
mysql> FLUSH PRIVILEGES;
Esci dalla shell di MySQL.
mysql> exit
Passo 6 - Scaricare Prestashop
Crea una directory per Prestashop.
$ sudo mkdir /var/www/html/prestashop -p
Ci sono due versioni di Prestashop disponibili - la versione base marchiata e la versione non marchiata. La versione marchiata è disponibile dal sito di Prestashop mentre la versione non marchiata è disponibile dal repository di GitHub. La differenza tra le due versioni è che la versione marchiata contiene moduli extra tra cui un processore di pagamento, moduli di Facebook e Google per la promozione e SEO, e vari altri moduli per connettersi a Prestashop e scopi analitici.
La versione base viene rilasciata dopo la versione non marchiata. Pertanto, al momento della scrittura di questo tutorial, l’ultima versione dell’edizione base disponibile è 8.1.1 e la versione non marchiata è 8.1.2. Per il nostro tutorial, utilizzeremo l’edizione base marchiata. Puoi utilizzare la versione non marchiata se lo desideri. Il processo di installazione per entrambe le versioni è esattamente lo stesso.
Scarica l’ultima versione utilizzando il seguente comando.
$ cd /tmp
$ wget https://assets.prestashop3.com/dst/edition/corporate/8.1.1/prestashop_edition_basic_version_8.1.1.zip
Puoi ottenere il link visitando la pagina di download di Prestashop, inserendo la tua email e scaricando il file. La versione non marchiata può essere scaricata dalla pagina delle release di Prestashop su GitHub.
Decomprimere l’archivio scaricato.
$ unzip prestashop_*.zip
Questo archivio contiene un altro file zip chiamato prestashop.zip che contiene tutti i file. Estrai i file nella directory di Prestashop.
$ sudo unzip prestashop.zip -d /var/www/html/prestashop
Cambia il proprietario della directory di Prestashop all’utente nginx.
$ sudo chown -R nginx: /var/www/html/prestashop
Passo 7 - Installare SSL
Dobbiamo installare Certbot per generare il certificato SSL. Utilizzeremo il pacchetto Snapd per questo. Poiché Rocky Linux non lo fornisce, installa l’installer Snapd. Richiede il repository EPEL (Extra Packages for Enterprise Linux) per funzionare. Ma poiché lo abbiamo già installato nel passo 3, possiamo procedere direttamente.
Installa Snapd.
$ sudo dnf install -y snapd
Abilita e avvia il servizio Snap.
$ sudo systemctl enable snapd --now
Installa il pacchetto core di Snap e assicurati che la tua versione di Snapd sia aggiornata.
$ sudo snap install core && sudo snap refresh core
Crea i collegamenti necessari affinché Snapd funzioni.
$ sudo ln -s /var/lib/snapd/snap /snap
$ echo 'export PATH=$PATH:/var/lib/snapd/snap/bin' | sudo tee -a /etc/profile.d/snapd.sh
Installa Certbot.
$ sudo snap install --classic certbot
Utilizza il seguente comando per assicurarti che il comando Certbot possa essere eseguito creando un collegamento simbolico alla directory /usr/bin.
$ sudo ln -s /snap/bin/certbot /usr/bin/certbot
Verifica se Certbot funziona correttamente.
$ certbot --version
certbot 2.7.4
Esegui il seguente comando per generare un certificato SSL.
$ sudo certbot certonly --nginx --agree-tos --no-eff-email --staple-ocsp --preferred-challenges http -m [email protected] -d prestashop.example.com
Il comando sopra scaricherà un certificato nella directory /etc/letsencrypt/live/prestashop.example.com sul tuo server.
Genera un certificato Diffie-Hellman group.
$ sudo openssl dhparam -dsaparam -out /etc/ssl/certs/dhparam.pem 4096
Controlla il servizio di pianificazione del rinnovo di Certbot.
$ sudo systemctl list-timers
Troverai snap.certbot.renew.service come uno dei servizi programmati per l’esecuzione.
NEXT LEFT LAST PASSED UNIT ACTIVATES
---------------------------------------------------------------------------------------------------------------------------
Sun 2023-11-26 17:12:40 UTC 1h 34min left Sun 2023-11-26 15:25:36 UTC 12min ago dnf-makecache.timer dnf-makecache.service
Sun 2023-11-26 17:48:00 UTC 2h 10min left - - snap.certbot.renew.timer snap.certbot.renew.service
Mon 2023-11-27 00:00:00 UTC 8h left Sun 2023-11-26 00:00:00 UTC 15h ago logrotate.timer logrotate.service
Fai un tentativo di rinnovo per controllare se il rinnovo SSL funziona correttamente.
$ sudo certbot renew --dry-run
Se non vedi errori, sei a posto. Il tuo certificato si rinnoverà automaticamente.
Passo 8 - Configurare SELinux
Cambia il contesto di sicurezza del file per Prestashop.
$ sudo semanage fcontext -a -t httpd_sys_rw_content_t "/var/www/html/prestashop(/.*)?"
Applica la politica.
$ sudo restorecon -Rv /var/www/html/prestashop/
Applica la politica per consentire a Nginx di accedere a MariaDB.
$ sudo setsebool -P httpd_can_network_connect_db 1
Applica la politica per consentire le connessioni verso host esterni. Questo è necessario per inviare email.
$ sudo setsebool -P httpd_can_network_connect 1
Con MariaDB 10.11, affronterai un altro problema, ovvero che SELinux impedisce a PHP-FPM di connettersi a MariaDB. Questo può essere risolto installando un modulo SELinux. Il primo passo è creare un file di type enforcement.
Crea il file my-phpfpm.te nella tua home directory e aprilo per la modifica.
$ cd ~
$ nano my-phpfpm.te
Incolla il seguente codice al suo interno.
module my-phpfpm 1.0;
require {
type unconfined_service_t;
type httpd_t;
type httpd_sys_content_t;
class dir write;
class unix_stream_socket connectto;
}
#============= httpd_t ==============
#!!!! This avc is allowed in the current policy
allow httpd_t httpd_sys_content_t:dir write;
#!!!! This avc is allowed in the current policy
allow httpd_t unconfined_service_t:unix_stream_socket connectto;
Salva il file premendo Ctrl + X e inserendo Y quando richiesto.
Il passo successivo è convertirlo in un modulo di politica utilizzando il seguente comando. Non modificare il nome del file nel comando altrimenti non funzionerà. Il modulo si chiama my-phpfpm e il nome del file deve essere lo stesso del nome del modulo.
$ sudo checkmodule -M -m -o my-phpfpm.mod my-phpfpm.te
Successivamente, dobbiamo compilare il modulo di politica per creare un pacchetto di politica.
$ sudo semodule_package -o my-phpfpm.pp -m my-phpfpm.mod
L’ultimo passo è caricare il pacchetto di politica utilizzando il comando semodule che installa la politica da utilizzare.
$ sudo semodule -i my-phpfpm.pp
Passo 9 - Configurare PHP-FPM
Apri php.ini per la modifica.
$ sudo nano /etc/php.ini
Per impostare le dimensioni di caricamento dei file, modifica i valori delle variabili upload_max_filesize e post_max_size. Questo valore decide la dimensione del file che puoi caricare su Prestashop. Per impostazione predefinita, è impostato a 10MB, che è ciò che configureremo con PHP.
$ sudo sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 16M/' /etc/php.ini
$ sudo sed -i 's/post_max_size = 8M/post_max_size = 16M/' /etc/php.ini
Configura il limite di memoria di PHP in base alle risorse e ai requisiti del tuo server.
$ sudo sed -i 's/memory_limit = 128M/memory_limit = 256M/' /etc/php.ini
Apri il file /etc/php-fpm.d/www.conf.
$ sudo nano /etc/php-fpm.d/www.conf
Dobbiamo impostare l’utente/gruppo Unix dei processi PHP su nginx. Trova le righe user=apache e group=apache nel file e cambiale in nginx.
...
; Unix user/group of processes
; Note: The user is mandatory. If the group is not set, the default user's group
; will be used.
; RPM: apache user chosen to provide access to the same directories as httpd
user = nginx
; RPM: Keep a group allowed to write in log dir.
group = nginx
...
Trova le righe listen.owner = nobody, listen.group = nobody, listen.mode = 0660 nel file e cambiale come segue dopo averle decommentate.
; Set permissions for unix socket, if one is used. In Linux, read/write
; permissions must be set in order to allow connections from a web server. Many
; BSD-derived systems allow connections regardless of permissions. The owner
; and group can be specified either by name or by their numeric IDs.
; Default Values: user and group are set as the running user
; mode is set to 0660
listen.owner = nginx
listen.group = nginx
listen.mode = 0660
Salva il file premendo Ctrl + X e inserendo Y quando richiesto.
Riavvia il processo PHP-fpm. Assicurati di avere Nginx installato prima di riavviare il servizio PHP, altrimenti fallirà poiché non sarà in grado di trovare il gruppo nginx.
$ sudo systemctl restart php-fpm
Cambia il gruppo della directory delle sessioni PHP in Nginx.
$ sudo chgrp -R nginx /var/lib/php/session
Passo 10 - Configurare Nginx
Apri il file /etc/nginx/nginx.conf per la modifica.
$ sudo nano /etc/nginx/nginx.conf
Aggiungi la seguente riga prima della riga include /etc/nginx/conf.d/*.conf;.
server_names_hash_bucket_size 64;
Salva il file premendo Ctrl + X e inserendo Y quando richiesto.
Crea e apri il file /etc/nginx/conf.d/prestashop.conf per la modifica.
$ sudo nano /etc/nginx/conf.d/prestashop.conf
Incolla il seguente codice al suo interno. Sostituisci prestashop.example.com con il tuo nome di dominio. Assicurati che il valore di client_max_body_size sia impostato a 10MB, che è lo stesso valore che abbiamo configurato con PHP in precedenza.
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
# [EDIT] Your domain name(s) go here.
server_name prestashop.example.com;
# [EDIT] Path to your domain Nginx logs.
access_log /var/log/nginx/prestashop.access.log;
error_log /var/log/nginx/prestashop.error.log;
# [EDIT] Path to your SSL certificates (take a look at Certbot https://certbot.eff.org).
ssl_certificate /etc/letsencrypt/live/prestashop.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/prestashop.example.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/prestashop.example.com/chain.pem;
ssl_session_timeout 5m;
ssl_session_cache shared:MozSSL:10m;
ssl_session_tickets off;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
ssl_ecdh_curve X25519:prime256v1:secp384r1:secp521r1;
ssl_stapling on;
ssl_stapling_verify on;
ssl_dhparam /etc/ssl/certs/dhparam.pem;
# [EDIT] Path to your PrestaShop directory.
root /var/www/html/prestashop;
index index.php;
# This should match the `post_max_size` and/or `upload_max_filesize` settings
# in your php.ini.
client_max_body_size 16M;
# Redirect 404 errors to PrestaShop.
error_page 404 /index.php?controller=404;
# HSTS (Force clients to interact with your website using HTTPS only).
# For enhanced security, register your site here: https://hstspreload.org/.
# WARNING: Don't use this if your site is not fully on HTTPS!
# add_header Strict-Transport-Security "max-age=63072000; includeSubDomains" preload; always;
# [EDIT] If you are using multiple languages.
# rewrite ^/fr$ /fr/ redirect;
# rewrite ^/fr/(.*) /$1;
# Images.
rewrite ^/(
# ...
# (rest of the configuration)
}
# enforce HTTPS
server {
listen 80;
listen [::]:80;
server_name prestashop.example.com;
return 301 https://$host$request_uri;
}
Salva il file premendo Ctrl + X e inserendo Y quando richiesto.
Verifica la configurazione di Nginx.
$ sudo nginx -t
Riavvia il server Nginx.
$ sudo systemctl restart nginx
Passo 11 - Installare Prestashop
Visita l’URL https://prestashop.example.com nel tuo browser e vedrai la seguente schermata di installazione.

Clicca su Avanti per procedere alla pagina successiva.

Ti verrà mostrata la Licenza di Prestashop. Seleziona il pulsante Accetto i termini e le condizioni sopra per accettare la licenza e clicca su Avanti per procedere.

Successivamente, ti verrà chiesto di condividere informazioni sul negozio. Dai un nome al tuo negozio, paese, fuso orario e tipo di negozio, e abilita l’opzione SSL. Inoltre, inserisci il tuo nome account, indirizzo email e password per accedere al negozio. Clicca su Avanti una volta terminato.

Successivamente, ti verrà chiesto se desideri aggiungere alcuni prodotti demo al negozio. Se non li desideri, seleziona no. Inoltre, seleziona l’opzione Installa tutti i moduli oppure puoi scegliere quali moduli desideri installare. Clicca su Avanti quando hai finito.

Successivamente, inserisci le credenziali del database che abbiamo creato nel passo 5. Lascia le altre opzioni intatte. Clicca sull’opzione Test del database per verificare la connessione.

Clicca su Avanti dopo una connessione riuscita al database per procedere alla pagina successiva.

Qui vedrai il progresso dell’installazione di Prestashop. Una volta terminato, si aprirà automaticamente la seguente pagina.

Clicca sul pulsante Gestisci il tuo negozio per aprire il pannello di amministrazione e configurare il tuo negozio.

Qui riceverai un avviso di eliminare la directory install prima di provare a gestire il negozio per migliorare la sicurezza. Rientra nel tuo sito tramite SSH ed esegui il seguente comando.
$ sudo rm -rf /var/www/html/petrashop/install
Torna alla pagina finale dell’installatore e apri nuovamente l’URL. Se noti, l’URL della pagina di amministrazione è randomizzato. Questo è fatto per migliorare la sicurezza. Ogni installazione di Prestashop ottiene un URL admin diverso. Per il nostro tutorial, il link generato è https://prestashop.example.com/admin705saygwpwquwnhixx1. Riceverai la seguente pagina di accesso.

Inserisci le tue credenziali e clicca sul pulsante LOG IN per accedere al pannello di controllo.

La pagina del negozio di Prestashop per un’installazione predefinita dovrebbe apparire come segue.

Puoi iniziare a utilizzare Prestashop da qui in poi.
Passo 12 - Aggiornare Prestashop
Ci sono diversi modi per aggiornare Prestashop. Il più semplice è utilizzare il modulo di assistenza all’aggiornamento integrato. La tua installazione di Prestashop viene fornita con il modulo.
Il primo passo è mettere il tuo negozio in modalità manutenzione. Clicca sull’opzione Configura >> Parametri Negozio >> Generale dal menu a sinistra nella pagina di amministrazione. Passa alla scheda di manutenzione nella pagina.
Disabilita il negozio e aggiungi il tuo indirizzo IP come IP di manutenzione cliccando sul pulsante Aggiungi il mio IP. Questo garantirà che tu possa accedere al negozio anche quando è in manutenzione. Clicca sul pulsante Salva quando hai finito.

Successivamente, apri la pagina Gestore Moduli nel tuo pannello di amministrazione selezionando l’opzione Migliora >> Moduli >> Gestore Moduli dal lato sinistro.
Una volta lì, installa il modulo 1-Click Upgrade cliccando sul pulsante Installa. Una volta installato, clicca sul pulsante Configura per aprire una nuova pagina dove puoi configurare le impostazioni prima di eseguire l’aggiornamento.
La prima parte della pagina elenca alcuni controlli pre-aggiornamento. Tutti i controlli devono essere soddisfatti prima che l’aggiornamento possa essere eseguito.

La prima configurazione ti consente di selezionare che tipo di aggiornamento desideri eseguire. Poiché stiamo utilizzando l’edizione base 8.1.1, l’edizione open-source 8.1.2 è disponibile per l’aggiornamento. È consigliabile attenersi ai rami minori/maggiori.

Scorri verso il basso nella pagina fino alle Opzioni di Backup dove puoi selezionare Prestashop per eseguire il backup dei file, del database e delle immagini. Queste funzionalità sono sperimentali, ma dovresti comunque includerle.

Successivamente, scegli le opzioni di aggiornamento su cosa desideri mantenere e cosa desideri aggiornare.

Clicca sul pulsante Salva in ciascuna sezione per salvare le opzioni. Una volta soddisfatto, clicca sul pulsante Aggiorna Prestashop Ora! nella stessa pagina per aggiornare il tuo negozio. Se l’aggiornamento non riesce per qualche motivo, ti verrà data la possibilità di tornare indietro.
Conclusione
Questo conclude il nostro tutorial in cui hai imparato come installare Prestashop su un server Rocky Linux 9. Se hai domande, pubblicale nei commenti qui sotto.
Ricevi i nuovi post nella tua casella di posta.
Nessuno spam. Disiscriviti in qualsiasi momento.