E-commerce · 9 min read · Nov 26, 2025

Installazione della piattaforma e-commerce Magento con Apache2 e Let's Encrypt su Ubuntu 20.04

Magento è un’applicazione web e-commerce gratuita e open-source che ti consente di creare un negozio eCommerce completamente funzionante in pochi minuti. È scritto in PHP e combina potenti funzionalità con flessibilità e un’interfaccia user-friendly. È una delle soluzioni più popolari per negozi online auto-ospitati grazie alla sua semplicità e al potente pannello di amministrazione. Viene fornito con un ricco set di funzionalità tra cui, gestione del sito, SEO, gestione del catalogo, navigazione dei prodotti e del catalogo, gestione degli ordini, checkout, promozioni e strumenti di conversione, e molto altro.

In questo tutorial, ti mostreremo come installare la piattaforma e-commerce Magento con Apache e Let’s Encrypt SSL su Ubuntu 20.04.

Prerequisiti

  • Un server che esegue Ubuntu 20.04 con 4 GB di RAM.
  • Un nome di dominio valido puntato al tuo server.
  • Una password di root configurata sul tuo server.

Installa il server LAMP

Magento gira sul webserver, scritto in PHP, e utilizza MariaDB come database. Quindi dovrai installare uno stack LAMP sul tuo server.

Per prima cosa, installa il server web Apache e il server MariaDB con il seguente comando:

apt-get install apache2 mariadb-server mariadb-client -y

L’ultima versione di Magento è compatibile solo con PHP 7.1.3+ e 7.2.x. Quindi dovrai installare le versioni PHP supportate con le estensioni richieste sul tuo server.

Per impostazione predefinita, Ubuntu 20.04 viene fornito con la versione PHP 7.4. Quindi dovrai aggiungere il PPA di Ondrej nel tuo sistema per installare altre versioni di PHP.

Puoi aggiungere il PPA di Ondrej PHP con il seguente comando:

apt-get install software-properties-common -y  
add-apt-repository ppa:ondrej/php

Successivamente, aggiorna il repository e installa PHP con le altre estensioni richieste utilizzando il seguente comando:

apt-get install php7.2 libapache2-mod-php7.2 php7.2-bcmath php7.2-common php7.2-mbstring php7.2-xmlrpc php7.2-soap php7.2-gd php7.2-xml php7.2-intl php7.2-mysql php7.2-cli php7.2-ldap php7.2-zip php7.2-curl wget curl unzip -y

Una volta terminato, puoi procedere al passaggio successivo.

Configura il database MariaDB

Per impostazione predefinita, MariaDB non è sicuro. Quindi è una buona idea proteggere e impostare la password di root di MariaDB. Puoi farlo con il seguente comando:

mysql_secure_installation

Rispondi a tutte le domande come mostrato di seguito:

Enter current password for root (enter for none):  
Set root password? [Y/n] Y
New password:  
Re-enter new password:  
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

Una volta che MariaDB è sicuro, accedi alla shell di MariaDB:

mysql -u root -p

Fornisci la tua password di root di MariaDB e poi crea un database e un utente per Magento:

MariaDB [(none)]> CREATE DATABASE magentodb;  
MariaDB [(none)]> CREATE USER 'magento'@'localhost' IDENTIFIED BY 'password';

Successivamente, concedi tutti i privilegi al database Magento con il seguente comando:

MariaDB [(none)]> GRANT ALL ON magentodb.* TO 'magento'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;

Successivamente, svuota i privilegi ed esci dalla shell di MariaDB utilizzando il seguente comando:

MariaDB [(none)]> FLUSH PRIVILEGES;  
MariaDB [(none)]> EXIT;

Una volta terminato, puoi procedere al passaggio successivo.

Scarica Magento

Al momento della scrittura di questo tutorial, l’ultima versione di Magento è 2.3.5. Puoi scaricarla dalla pagina ufficiale di download di Magento.

Una volta scaricato, estrai il file scaricato nella directory radice del web di Apache con il seguente comando:

mkdir /var/www/html/magento  
tar -xvjf magento-ce* -C /var/www/html/magento/

Successivamente, assegna la proprietà e i permessi corretti alla directory magento:

chown -R www-data:www-data /var/www/html/magento/  
chmod -R 755 /var/www/html/magento/

Una volta terminato, puoi procedere al passaggio successivo.

Configura Apache per Magento

Successivamente, crea un nuovo file di configurazione del virtual host di Apache per servire il sito web Magento.

nano /etc/apache2/sites-available/magento.conf

Aggiungi le seguenti righe:


     ServerAdmin [email protected]
     DocumentRoot /var/www/html/magento/
     ServerName magento.linuxbuz.com
     
        Options Indexes FollowSymLinks MultiViews
        AllowOverride All
        Order allow,deny
        allow from all
     
     ErrorLog ${APACHE_LOG_DIR}/error.log
     CustomLog ${APACHE_LOG_DIR}/access.log combined

Salva e chiudi il file, quindi abilita il virtual host di Magento e il modulo di riscrittura di Apache con il seguente comando:

a2ensite magento.conf  
a2enmod rewrite

Infine, riavvia il servizio Apache per implementare le modifiche:

systemctl restart apache2

A questo punto, il server web Apache è configurato per servire Magento.

Sicurezza di Magento con Let’s Encrypt SSL

È sempre una buona idea proteggere il tuo sito web con il certificato SSL gratuito di Let’s Encrypt. Prima, installa il client Certbot sul tuo server per scaricare e configurare Let’s Encrypt SSL per il tuo sito web.

apt-get install certbot python3-certbot-apache -y

Una volta installato Certbot, esegui il seguente comando per scaricare e installare Let’s Encrypt SSL per il tuo sito web:

certbot --apache -d magento.linuxbuz.com

Ti verrà chiesto di fornire la tua email valida e di accettare i termini di servizio come mostrato di seguito:

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator apache, Installer apache
Enter email address (used for urgent renewal and security notices) (Enter 'c' to
cancel): [email protected]

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(A)gree/(C)ancel: A

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let's Encrypt project and the non-profit
organization that develops Certbot? We'd like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
(Y)es/(N)o: Y

Obtaining a new certificate
Performing the following challenges:
http-01 challenge for magento.linuxbuz.com
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/magento-le-ssl.conf
Enabled Apache socache_shmcb module
Enabled Apache ssl module
Deploying Certificate to VirtualHost /etc/apache2/sites-available/magento-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/magento-le-ssl.conf

Successivamente, ti verrà chiesto di scegliere se reindirizzare o meno il traffico HTTP a HTTPS:

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you're confident your site works on HTTPS. You can undo this
change by editing your web server's configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2

Digita 2 e premi Invio per completare l’installazione.

Redirecting vhost in /etc/apache2/sites-enabled/magento.conf to ssl vhost in /etc/apache2/sites-available/magento-le-ssl.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://magento.linuxbuz.com

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=magento.linuxbuz.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/magento.linuxbuz.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/magento.linuxbuz.com/privkey.pem
   Your cert will expire on 2020-08-11. To obtain a new or tweaked
   version of this certificate in the future, simply run certbot again
   with the "certonly" option. To non-interactively renew *all*
   of your certificates, run "certbot renew"
 - Your account credentials have been saved in your Certbot
   configuration directory at /etc/letsencrypt. You should make a
   secure backup of this folder now. This configuration directory will
   also contain certificates and private keys obtained by Certbot so
   making regular backups of this folder is ideal.
 - If you like Certbot, please consider supporting our work by:

   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate
   Donating to EFF:                    https://eff.org/donate-le

Accedi al sito web di Magento

A questo punto, il tuo sito web Magento è protetto con Let’s Encrypt SSL.

Ora, apri il tuo browser web e digita l’URL https://magento.linuxbuz.com. Sarai reindirizzato alla procedura guidata di installazione basata sul web di Magento:

Impostazione di Magento

Clicca sul pulsante Accetta e Configura Magento. Dovresti vedere la schermata di Prontezza di Magento:

Controllo di prontezza

Clicca sul pulsante Inizia Controllo Prontezza. Una volta completato il controllo di prontezza, dovresti vedere la seguente schermata:

Tutti i requisiti sono soddisfatti

Clicca sul pulsante Avanti. Dovresti vedere la schermata di configurazione del database:

Configura il database

Fornisci il nome del tuo database Magento, nome utente del database, password e clicca sul pulsante Avanti. Dovresti vedere la procedura guidata di configurazione web di Magento:

configurazione web

Fornisci il tuo indirizzo del negozio Magento e dell’amministratore, abilita HTTPS e clicca sul pulsante Avanti. Dovresti vedere la schermata di personalizzazione del negozio:

Impostazioni personalizzate del negozio

Imposta il tuo fuso orario preferito, valuta, lingua e clicca sul pulsante Avanti. Dovresti vedere la schermata di creazione dell’utente amministratore:

Crea un utente amministratore

Fornisci il tuo nome utente amministratore, email, password e clicca sul pulsante Avanti. Dovresti vedere la seguente schermata:

Installa ora

Clicca sul pulsante Installa Ora per avviare l’installazione. Una volta completata con successo l’installazione, dovresti vedere la seguente schermata:

Installazione riuscita

Clicca sull’indirizzo dell’amministratore di Magento. Dovresti vedere la pagina di amministrazione di Magento:

Accesso a Magento

Fornisci il tuo nome utente amministratore di Magento, password e clicca sul pulsante Accedi. Dovresti vedere il dashboard di Magento nella seguente schermata:

Dashboard di Magento

Puoi anche accedere al negozio Magento utilizzando l’URL https://magento.linuxbuz.com. Dovresti vedere la seguente schermata:

Pagina iniziale di Magento

Conclusione

Congratulazioni! hai installato con successo Magento con Let’s Encrypt SSL su Ubuntu 20.04. Ora puoi facilmente implementare il tuo negozio online. Sentiti libero di chiedermi se hai domande.

Share: X/Twitter LinkedIn

Ricevi i nuovi post nella tua casella di posta.

Nessuno spam. Disiscriviti in qualsiasi momento.