Ricerca nel sito web

Come installare Magento su Debian 11


Su questa pagina

  1. Prerequisiti
  2. Installa Apache, PHP e altre estensioni richieste
  3. Installa e configura MySQL Server
  4. Installa Compositore
  5. Installa Magento2
  6. Crea un file di configurazione dell'host virtuale Apache
  7. Accedi all'interfaccia web di Magento2
  8. Conclusione

Magento è un'applicazione eCommerce gratuita e open source che ti consente di ospitare il tuo negozio online. È scritto in PHP e utilizza il framework Zend. È versatile e scalabile che lo rende adatto a negozi di piccole, medie e grandi dimensioni. Ti consente di ospitare un sistema di carrello della spesa online completamente funzionante senza alcuna conoscenza di programmazione. È utilizzato da migliaia di negozi online grazie alla sua semplicità e facilità d'uso.

In questo tutorial, ti mostrerò come installare Magento2 su Debian 11.

Prerequisiti

  • Un server che esegue Debian 11.
  • Un nome di dominio valido indicato con l'IP del tuo server.
  • Sul server è configurata una password di root.

Installa Apache, PHP e altre estensioni richieste

Innanzitutto, dovrai installare Apache, PHP e altre estensioni PHP necessarie sul tuo server. Puoi installarli tutti usando il seguente comando:

apt-get install apache2 php libapache2-mod-php php-common php-gmp php-curl php-soap php-bcmath php-intl php-mbstring php-xmlrpc php-mysql php-gd php-xml php-cli php-zip -y

Una volta installati tutti i pacchetti, modifica il file php.ini e modifica alcune impostazioni predefinite:

nano /etc/php/7.4/apache2/php.ini

Modificare i seguenti valori:

file_uploads = On
allow_url_fopen = On
short_open_tag = On
memory_limit = 512M
upload_max_filesize = 128M
max_execution_time = 3600

Salva e chiudi il file, quindi riavvia il servizio Apache per applicare le modifiche:

systemctl restart apache2

Installa e configura il server MySQL

Magento2 utilizza MariaDB o MySQL come backend del database. Per impostazione predefinita, la versione 10.5 di MariaDB è inclusa nel repository predefinito di Debian 11, che non è supportato da Magento2. Quindi dovrai installare MySQL Server 8 sul tuo server.

Innanzitutto, scarica il file del pacchetto MySQL con il seguente comando:

wget https://repo.mysql.com//mysql-apt-config_0.8.18-1_all.deb

Successivamente, installalo utilizzando il seguente comando:

apt install ./mysql-apt-config_0.8.18-1_all.deb -y

Ti verrà chiesto di selezionare la versione di MySQL che desideri installare:

Seleziona MySQL Server 8 e fai clic sul pulsante OK.

Successivamente, aggiorna il repository e installa il server MySQL 8 con il seguente comando:

apt-get update -y
apt-get install mysql-server -y

Una volta installato MySQL, connettiti a MySQL con il seguente comando:

mysql -u root -p

Una volta effettuato l'accesso, creare un database e un utente per Magento2 con il seguente comando:

mysql> CREATE DATABASE magento2;
mysql> CREATE USER 'magento2'@'localhost' IDENTIFIED BY 'password';

Quindi, concedi tutti i privilegi al database Magento2:

mysql> GRANT ALL PRIVILEGES ON magento2.* TO 'magento2'@'localhost';

Successivamente, scarica i privilegi ed esci da MySQL con il seguente comando:

mysql> FLUSH PRIVILEGES;
mysql> EXIT;

Una volta terminato, puoi procedere al passaggio successivo.

Installa Compositore

Composer è un gestore delle dipendenze per PHP utilizzato per gestire le dipendenze PHP richieste per il tuo progetto.

Innanzitutto, installa lo strumento da riga di comando curl con il seguente comando:

apt-get install curl -y

Successivamente, installa Composer utilizzando il seguente comando:

curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer

Otterrai il seguente output:

All settings correct for using Composer
Downloading...

Composer (version 2.1.12) successfully installed to: /usr/local/bin/composer
Use it: php /usr/local/bin/composer

Successivamente, verifica la versione di Composer utilizzando il seguente comando:

composer --version

Dovresti vedere il seguente output:

Composer version 2.1.12 2021-11-09 16:02:04

Installa Magento2

Quindi, cambia la directory nella directory root web di Apache e scarica l'ultima versione di Magento2 con il seguente comando:

cd /var/www/html
composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition magento2

Ti verrà chiesto di fornire il nome utente e la password del tuo account Magento come mostrato di seguito:

Creating a "magento/project-community-edition" project at "./magento2"
Warning from repo.magento.com: You haven't provided your Magento authentication keys. For instructions, visit https://devdocs.magento.com/guides/v2.3/install-gde/prereq/connect-auth.html
    Authentication required (repo.magento.com):
      Username: a6b333ad41629bac913eaabb9b8e053c
      Password: 

Utilizzare la chiave pubblica come nome utente e la chiave privata come password, quindi premere il tasto Invio. Otterrai il seguente output:

Do you want to store credentials for repo.magento.com in /root/.config/composer/auth.json ? [Yn] Y
Installing magento/project-community-edition (2.4.3-p1)
  - Downloading magento/project-community-edition (2.4.3-p1)
  - Installing magento/project-community-edition (2.4.3-p1): Extracting archive
Created project in /var/www/html/magento2
Loading composer repositories with package information

Successivamente, imposta le autorizzazioni e la proprietà appropriate di Magento2 e di altre directory:

chown -R www-data:www-data /var/www/html/magento2/
cd /var/www/html/magento2
find var generated vendor pub/static pub/media app/etc -type f -exec chmod g+w {} +
find var generated vendor pub/static pub/media app/etc -type d -exec chmod g+ws {} +
chown -R :www-data .
chmod u+x bin/magento

Successivamente, disabilita il modulo Elasticsearch con il seguente comando:

php bin/magento module:disable {Magento_Elasticsearch,Magento_InventoryElasticsearch,Magento_Elasticsearch6,Magento_Elasticsearch7}

Otterrai il seguente output:

The following modules have been disabled:
- Magento_Elasticsearch
- Magento_Elasticsearch6
- Magento_InventoryElasticsearch
- Magento_Elasticsearch7

Cache cleared successfully.
Generated classes cleared successfully. Please run the 'setup:di:compile' command to generate classes.
Info: Some modules might require static view files to be cleared. To do this, run 'module:disable' with the --clear-static-content option to clear them.

Successivamente, installa Magento2 con il seguente comando:

bin/magento setup:install --base-url=http://magento.example.com --db-host=localhost --db-name=magento2 --db-user=magento2 --db-password=password --admin-firstname=admin --admin-lastname=admin  --language=en_US --currency=USD --timezone=America/Chicago --use-rewrites=1

Una volta installato Magento2, dovresti vedere il seguente output:

Module 'Vertex_AddressValidation':
[Progress: 1363 / 1370]
Module 'Yotpo_Yotpo':
[Progress: 1364 / 1370]
Enabling caches:
Current status:
layout: 1
block_html: 1
full_page: 1
[Progress: 1365 / 1370]
Installing admin user...
[Progress: 1366 / 1370]
Caches clearing:
Cache cleared successfully
[Progress: 1367 / 1370]
Disabling Maintenance Mode:
[Progress: 1368 / 1370]
Post installation file permissions check...
For security, remove write permissions from these directories: '/var/www/html/magento2/app/etc'
[Progress: 1369 / 1370]
Write installation date...
[Progress: 1370 / 1370]
[SUCCESS]: Magento installation complete.
[SUCCESS]: Magento Admin URI: /admin_fgadpx
Nothing to import.

Nota: ricorda l'URI di amministrazione di Magento2 dall'output precedente. Dovrai usarlo per accedere all'interfaccia web di Magento.

Successivamente, disabilita l'autenticazione a due fattori di Magento2, cancella la cache e installa il Cron con i seguenti comandi:

sudo -u www-data bin/magento module:disable Magento_TwoFactorAuth
sudo -u www-data bin/magento cache:flush
sudo -u www-data bin/magento cron:install

Una volta terminato, puoi procedere al passaggio successivo.

Creare un file di configurazione dell'host virtuale Apache

Successivamente, dovrai creare un file di configurazione dell'host virtuale Apache per Magento2. Puoi crearlo con il seguente comando:

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

Aggiungi le seguenti righe:

<VirtualHost *:80>
     ServerAdmin 
      DocumentRoot /var/www/html/magento2/
     ServerName magento.example.com

     <Directory /var/www/html/magento2/>
          Options FollowSymlinks
          AllowOverride All
          Require all granted
     </Directory>

     ErrorLog ${APACHE_LOG_DIR}/magento2_error.log
     CustomLog ${APACHE_LOG_DIR}/magento2_access.log combined

</VirtualHost>

Salva e chiudi il file, quindi attiva l'host virtuale Magento e il modulo di riscrittura Apache utilizzando il seguente comando:

a2ensite magento2.conf
a2enmod rewrite

Infine, riavvia il servizio Apache per applicare le modifiche:

systemctl restart apache2

Puoi anche controllare lo stato di Apache con il seguente comando:

systemctl status apache2

Dovresti vedere il seguente output:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-11-20 06:00:59 UTC; 4s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 18394 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 18398 (apache2)
      Tasks: 6 (limit: 4679)
     Memory: 15.1M
        CPU: 99ms
     CGroup: /system.slice/apache2.service
             ??18398 /usr/sbin/apache2 -k start
             ??18399 /usr/sbin/apache2 -k start
             ??18400 /usr/sbin/apache2 -k start
             ??18401 /usr/sbin/apache2 -k start
             ??18402 /usr/sbin/apache2 -k start
             ??18403 /usr/sbin/apache2 -k start

Nov 20 06:00:59 debian11 systemd[1]: Starting The Apache HTTP Server...

Accedi all'interfaccia web di Magento2

Ora apri il tuo browser web e accedi all'interfaccia di amministrazione di Magento2 utilizzando l'URL http://magento.example.com/admin_fgadpx. Dovresti vedere la pagina di accesso di Magento2:

Fornisci il nome utente e la password dell'amministratore e fai clic sul pulsante Accedi. Dovresti vedere la dashboard di Magento2 nella pagina seguente:

Conclusione

Congratulazioni! hai installato con successo Magento2 su Debian 11. Ora puoi ospitare facilmente il tuo negozio online con Magento. Non esitate a chiedermi se avete domande.