Magento è una piattaforma di e-commerce open source scritta in PHP. Ed è una piattaforma di e-commerce molto popolare, di proprietà e gestita da Adobe Inc. La piattaforma è flessibile e ha un'ampia varietà di funzionalità per creare un negozio online.
In questo tutorial ti guideremo su come installare Magento 2.4.3 utilizzando lo stack LAMP.
Iniziamo l'installazione.
1 1. Aggiornamento del sistema
sudo apt update -y && apt upgrade -y
2 2. Installazione di estensioni PHP e PHP
La versione PHP predefinita di Ubuntu 20.04 è PHP 7.4. In questa configurazione utilizzeremo PHP 7.4 poiché è la versione richiesta per la versione 2.4.3. Procediamo con l'installazione di PHP e delle estensioni.
sudo apt install php libapache2-mod-php php-bcmath php-curl php-fpm php-gd php-intl php-mbstring php-mysql php-soap php-xml php-xsl php-zip php-cli
Modifichiamo alcuni dei valori PHP per soddisfare i requisiti.
Trova il file di configurazione PHP.
[email protected]:~# php --ini | grep "Loaded Configuration File"
Loaded Configuration File: /etc/php/7.4/cli/php.ini
Apri il file di configurazione utilizzando il tuo editor preferito.
nano /etc/php/7.4/cli/php.ini
Modifica il file di configurazione con i valori sottostanti.
memory_limit = 1G
upload_max_filesize = 128M
zlib.output_compression = on
max_execution_time = 18000
realpath_cache_size = 10M
realpath_cache_ttl = 7200
Quindi salva il file di configurazione.
3 3. Installazione e configurazione del database
Il database che utilizzeremo in questo tutorial è MariaDB.
Procediamo con l'installazione del Database.
sudo apt install mariadb-server -y
Configuriamo il server MariaDB.
sudo mysql_secure_installation
Uscita:
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none): Press Enter
You already have a root password set, so you can safely answer 'n'.
Change the root password? [Y/n] n
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
Riavvia il servizio MariaDB:
sudo systemctl restart mariadb
Creiamo il database per la nostra applicazione.
Primo accesso alla nostra console MariaDB.
sudo mysql -u root
Ora crea il nome del database e l'utente del database.
MariaDB [(none)]> create database magento2;
MariaDB [(none)]> grant all privileges on magento2.* to 'magento_user'@'localhost' identified by 'mypassword';
MariaDB [(none)]> flush privileges;
MariaDB [(none)]> exit;
Non dimenticare di modificare "miapassword ” alla password desiderata.
4 4. Installazione e configurazione del server Web
Poiché questo tutorial è sullo stack LAMP, installeremo il server Web Apache.
sudo apt install apache2
Avviamo e abilitiamo il server web Apache.
sudo systemctl start apache2
sudo systemctl enable apache2
Crea un host virtuale per il nostro sito.
nano /etc/apache2/sites-available/domain.com.conf
Aggiungi sotto il contenuto.
<VirtualHost *:80>
ServerAdmin [email protected]
ServerName domain.com
ServerAlias www.domain.com
DocumentRoot /var/www/magento2/pub
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Directory "/var/www/">
AllowOverride all
</Directory>
</VirtualHost>
Nota per modificare il Nomeserver e ServerAlias al tuo dominio.
Abilitiamo l'Host Virtuale
a2ensite domain.com.conf
Quindi abilita il modulo mod_rewrite.
a2enmod rewrite
Riavvia Apache per rendere effettiva la configurazione.
systemctl restart apache2
5 5. Installazione di Elastic Search
A partire dalla versione 2.4, tutte le installazioni devono essere configurate per utilizzare Elasticsearch.
Prima di procedere con l'installazione di Elasticsearch è necessario installare le dipendenze richieste.
sudo apt install apt-transport-https ca-certificates gnupg2
Importa la chiave GPG.
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
Aggiungi il repository Elasticsearch.
sudo sh -c 'echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" > /etc/apt/sources.list.d/elastic-7.x.list'
Installiamo ora Elasticsearch .
sudo apt update
sudo apt install elasticsearch
Quindi avvia e abilita il servizio.
systemctl start elasticsearch
systemctl enable elasticsearch
6 6. Installazione di Composer
Composer viene utilizzato per gestire i pacchetti PHP.
Procediamo con l'installazione del compositore.
curl -sS https://getcomposer.org/installer -o composer-setup.php
sudo php -d memory_limit=-1 composer-setup.php --install-dir=/usr/local/bin --filename=composer
NOTA: Se riscontri "Errore irreversibile PHP:dimensione memoria consentita esaurita" durante l'esecuzione di Composer, è meglio impostare il valore PHP memory_limit su -1 o illimitato.
7 7. Scarica e installa Magento 2.4.3
Per la maggior parte dei casi si consiglia di installarlo utilizzando il Marketplace creando una chiave di accesso.
Creiamo una chiave di accesso.
- Primo accesso al tuo account Marketplace
- Vai a Nome->Il mio profilo
- Vai a Marketplace->I miei prodotti->Chiavi di accesso
- Sotto Magento 2 scheda fare clic su "Crea una nuova chiave di accesso “
- Nel popup, inserisci un nome qualsiasi nella casella di testo, quindi fai clic su OK.
- Hai finito e vedrai le chiavi di accesso generate.
Ora procediamo con l'Installazione.
Per prima cosa esegui questo comando.
composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition=2.4.3 /var/www/magento2
Dopo aver eseguito il comando sopra, ti verrà chiesto di fornire il nome utente e la password che sono le tue Chiavi di accesso .
Username: YOUR_PUBLIC_KEY
Password: YOUR_PRIVATE_KEY
Dopo aver inserito le credenziali l'installazione ti chiederà se vuoi memorizzare le credenziali in " /root/.config/composer/auth.json " basta selezionare Y.
Do you want to store credentials for repo.magento.com in /root/.config/composer/auth.json ? [Yn] Y
Vai al tuo Magento directory principale.
cd /var/www/magento2
Procediamo ora con l'installazione.
Nota: Non dimenticare di modificare i valori di seguito in base al tuo set di valori.
bin/magento setup:install \
--base-url=http://domain.com \
--db-host=localhost \
--db-name=magento2 \
--db-user=magento_user \
--db-password=mypassword \
--admin-firstname=admin \
--admin-lastname=admin \
[email protected] \
--admin-user=admin \
--admin-password=myadminpassword \
--language=en_US \
--currency=USD \
--timezone=America/Chicago \
--use-rewrites=1
Dopo il processo di installazione vedrai il link di amministrazione per il tuo sito.
[SUCCESS]: Magento installation complete.
[SUCCESS]: Magento Admin URI: /admin_5shsgt
NOTA :Se la password del tuo database contiene caratteri speciali ([email protected]#$%^$*) riscontrerai problemi come questo:
SQLSTATE[HY000] [1045] Accesso negato per l'utente 'user'@'localhost'
SOLUZIONI: aggiungi una barra rovesciata prima dei caratteri speciali.
Se la password del tuo database è qualcosa del genere "[email protected]" la password del database dovrebbe essere impostata di seguito:
–db-password= myp \ @55w0rd
8 8. Imposta i lavori Cron
I lavori Cron vengono utilizzati per automatizzare operazioni importanti. Impostiamo i lavori cron.
sudo bin/magento cron:install
Prima di accedere alla nostra istanza, dobbiamo correggere l'autorizzazione.
sudo chown -R www-data:www-data /var/www/magento2
Ecco fatto, ora puoi accedere al tuo sito Magento, ma se riscontri problemi di accesso al tuo sito devi disabilitare l'autenticazione a due fattori, per eseguire il comando seguente.
sudo bin/magento module:disable Magento_TwoFactorAuth
Congratulazioni per aver installato con successo Magento 2.4.3 ora puoi accedere al tuo sito all'indirizzo http://domain.com
9 Conclusione
Hai imparato come installare Magento 2.4.3 su Ubuntu 20.04 con lo stack LAMP. La prossima cosa ovvia da fare è proteggere il tuo sito installando il certificato SSL, quindi ti consigliamo di consultare il nostro articolo su Let's Encrypt.