GNU/Linux >> Linux Esercitazione >  >> Debian

Come installare Magento su Debian 11

Magento è un'applicazione di 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 online completamente funzionale senza alcuna conoscenza di programmazione. È utilizzato da migliaia di negozi online per la 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 puntato all'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 cambia alcune impostazioni predefinite:

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

Modifica 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

Quindi, installalo usando 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 su OK pulsante.

Quindi, 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, crea 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';

Quindi, svuota i privilegi ed esci da MySQL con il seguente comando:

mysql> FLUSH PRIVILEGES;
mysql> EXIT;

Una volta terminato, puoi procedere al passaggio successivo.

Installa Composer

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

Quindi, installa Composer usando 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 principale 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: 

Usa la chiave pubblica come nome utente e la chiave privata come password, quindi premi 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

Quindi, 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

Quindi, 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.

Quindi, 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 [email protected] --admin-user=admin [email protected] --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 Magento2 dall'output sopra. Dovrai usarlo per accedere all'interfaccia web di Magento.

Quindi, disabilita l'autenticazione a due fattori Magento2, svuota la cache e installa 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.

Crea 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 [email protected]
      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 di 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 su Accedi pulsante. 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. Sentiti libero di chiedermi se hai domande.


Debian
  1. Come installare MySQL su Debian 11

  2. Come installare MySQL Workbench su Debian 11

  3. Come installare PHP-Fusion 9 su Debian 8

  4. Come installare LAMP su Debian 8

  5. Come installare PunBB su Debian 8

Come installare MySQL 8 su Debian 10

Come installare Debian 11

Come installare Magento su Debian 10

Come installare Vai su Debian 10

Come installare MySQL/MariaDB su Debian 11

Come installare MySQL su Debian 10