Magento è un software di e-commerce open source e un sistema di gestione dei contenuti per siti Web di e-commerce basato su PHP Zend Framework. Utilizza MySQL o MariaDB come backend del database. Lo sviluppo di Magento è stato avviato nel 2008 da Varien.
In questo tutorial, ti mostrerò come installare Magento 2 con Nginx, PHP-FPM e MariaDB come database. Userò Ubuntu 15.10 (Wily Werewolf) come base per l'installazione. Se non hai ancora una configurazione minima del server, consulta questo tutorial per ottenere una configurazione di base adeguata.
Prerequisiti:
- Ubuntu 15.10 - 64 bit.
- Privilegi root.
Passaggio 1:installa Nginx
Accedi al tuo server Ubuntu con il tuo account di root (ad es. tramite SSH) e aggiorna il repository.
sudo su
apt-get update
Quindi installa Nginx:
apt-get install nginx -y
Verifica che nginx sia stato installato correttamente controllando la porta:
netstat -plntu | grep 80
Fase 2 - Installa e configura PHP-FPM
In questo passaggio installeremo PHP 5.6 in modalità PHP-FPM. Inoltre installeremo le seguenti estensioni PHP richieste da magento.
- php-gd
- php-mhash
- php-mcrypt
- php-xsl
- php-pera
- php-sapone
Installa i pacchetti con il comando apt di seguito:
apt-get install php5-fpm php5-mhash php5-mcrypt php5-curl php5-cli php5-mysql php5-gd php5-xsl php5-json php5-intl php-pear php5-dev php5-common php-soap libcurl3 curl -y
Dobbiamo abilitare manualmente l'estensione php5-mcrypt creando un collegamento simbolico nella directory conf.d.
cd /etc/php5/fpm/conf.d
sudo ln -s ../../mods-available/mcrypt.ini
cd /etc/php5/cli/conf.d
sudo ln -s ../../mods-available/mcrypt.ini
Ora modifica i file php.ini per fpm e cli.
vim /etc/php5/fpm/php.ini
vim /etc/php5/cli/php.ini
e aumentare il limite di memoria e il tempo di esecuzione di php e attivare la compressione zlib aggiungendo le seguenti righe alla fine dei file:
memory_limit = 512M
max_execution_time = 1800
zlib.output_compression = On
Salva ed esci.
Riavvia il servizio PHP-FPM per applicare le modifiche alla configurazione:
systemctl restart php5-fpm
Fase 3 - Installa e configura MariaDB
Userò MariaDB invece di MySQL qui. Installa MariaDB con il comando apt:
apt-get install mariadb-server mariadb-client -y
Imposta la password dell'utente root di MariaDB con questo comando:
mysqladmin -u root password mypassword
Quindi connettiti alla shell MySQL (la shell MariaDB viene avviata con il comando MySQL) con la tua password di root, crea un database con il nome 'magentodb ' e un utente 'magentouser ' con la password '[email protetta] '. Scegli una password sicura per "magentouser" sul tuo server e non quella "[email protected] ' che ho usato in questo esempio!
Accedi alla shell MySQL:
mysql -u root -p
Nella shell MySQL, esegui questi comandi:
create database magentodb;
create user [email protected] identified by '[email protected]';
grant all privileges on magentodb.* to [email protected] identified by '[email protected]';
flush privileges;
\q
Database creato e configurato.
Passaggio 4 - Installa e configura Magento 2
Installeremo Magento nella directory '/var/www/magento2'. Per l'installazione di Magento, abbiamo bisogno del compositore PHP.
Installa il compositore php
Vai alla directory principale, scarica il file di installazione del compositore con curl ed eseguilo per installare il compositore.
cd ~/
curl -sS https://getcomposer.org/installer | php
Sposta il file "composer.phar" nella directory bin del tuo server e rinominalo in composer in modo che possa essere eseguito facilmente:
mv composer.phar /usr/bin/composer
Ora verifica che il comando del compositore funzioni:
composer -v
- Scarica ed estrai Magento 2
Vai alla directory web '/var/www/' e scarica Magento dal suo repository Github, quindi decomprimi il file tar.gz scaricato:
cd /var/www/
wget https://github.com/magento/magento2/archive/2.0.0.tar.gz
tar -xzvf 2.0.0.tar-gz
mv magento2-2.0.0/ magento2/
Fatto.
- Configura la chiave Magento
Registra un account sul sito web Magento repo.magento.com. Questo account è necessario per utilizzare Magento e il negozio del compositore Magento. Dopo esserti registrato, vai alla scheda 'Il mio account> Sviluppatore> Chiave di sicurezza s', quindi genera le tue chiavi.
- Configura il token Github
Assicurati di esserti registrato su github.com. Genera il token di accesso GitHub facendo clic sul tuo profilo principale, vai su 'Impostazioni> Token di accesso personali ' e clicca su 'Genera nuovo token'.
- Installa componenti di terze parti per Magento
Vai alla directory di installazione di Magento 2 '/var/www/magento2' ed esegui il comando del compositore:
cd /var/www/magento2/
composer install -v
Ti verrà richiesta l'autenticazione Magento, utilizza la chiave pubblica come nome utente e la chiave privata per la password.
Quindi ti verrà chiesto il token GitHub, incollalo e premi "invio" per continuare con il componente di terze parti.
- Configura Nginx Virtualhost
Magento offre una configurazione di host virtuale Nginx già pronta, quindi dobbiamo solo includerla nella nostra configurazione.
Vai alla directory dell'host virtuale Nginx e crea un nuovo file chiamato magento:
cd /etc/nginx/sites-available/
vim magento
Incolla la configurazione di seguito:
upstream fastcgi_backend { server unix:/var/run/php5-fpm.sock; } server { listen 80; server_name www.newmagento.com; set $MAGE_ROOT /var/www/magento2; set $MAGE_MODE developer; include /var/www/magento2/nginx.conf.sample; }
Sostituisci www.newmagento.com con il nome di dominio del sito web che il tuo negozio utilizzerà.
Salva ed esci.
Ora attiva l'host virtuale e riavvia Nginx:
ln -s /etc/nginx/sites-available/magento /etc/nginx/sites-enabled/
systemctl restart nginx
- Installa Magento
Installeremo magento sulla riga di comando. Nella directory Magento '/var/www/magento2/' c'è un file binario con il nome 'magento' che viene usato per installare e gestire Magento. Esegui il comando:
bin/magento setup:install --backend-frontname="adminlogin" \
--key="biY8vdWx4w8KV5Q59380Fejy36l6ssUb" \
--db-host="localhost" \
--db-name="magentodb" \
--db-user="magentouser" \
--db-password="[email protected]" \
--language="en_US" \
--currency="USD" \
--timezone="America/New_York" \
--use-rewrites=1 \
--use-secure=0 \
--base-url="http://www.newmagento.com" \
--base-url-secure="https://www.newmagento.com" \
--admin-user=adminuser \
[email protected] \
[email protected] \
--admin-firstname=admin \
--admin-lastname=user \
--cleanup-database
backend-frontname =la pagina di amministrazione del nostro sito magento, usiamo 'adminlogin '.
Chiave =le nostre chiavi magento, possiamo generarle o trovarle casuali su http://randomkeygen.com/ etc.
Base-url =assicurati che sia lo stesso con la configurazione dell'host virtuale.
Al termine della procedura di installazione dovresti vedere queste righe:
[SUCCESS]: Magento installation complete. [SUCCESS]: Magento Admin URI: /adminlogin
Prima di testare l'installazione di Magento, assicurati che il proprietario della directory web sia 'www-data ', quindi riavvia nginx.
cd /var/www/magento2/
chown -R www-data .
systemctl restart nginx
Ora apri il dominio Magento nel tuo browser:
Nel mio caso, il nome è:www.newmagento.com .
Prova ad accedere alla dashboard di amministrazione di Magento:
www.newmagento.com/adminlogin
Nota :
Se ricevi un errore sull'indicizzatore Magento e sul cronjob, puoi risolverlo aggiungendo il seguente cronjob al tuo server:
crontab -u www-data -e
Aggiungi le seguenti righe:
*/1 * * * * php -c /etc/php5/cli/php.ini /var/www/magento2/bin/magento cron:run */1 * * * * php -c /etc/php5/cli/php.ini /var/www/magento2/update/cron.php */1 * * * * php -c /etc/php5/cli/php.ini /var/www/magento2/bin/magento setup:cron:run
Salva ed esci.
Magento 2 con Nginx e PHP-FPM su Ubuntu 15.10 è ora installato.
Conclusione
Magento è una piattaforma di e-commerce open source basata su PHP Zend Framework. È un complesso software di e-commerce per aiutarti con il tuo business online. Magento utilizza un'architettura MVC (Model-View-Controller) e MySQL o MariaDB come database. Magento è facile da installare, possiamo installarlo con il web server Nginx o Apache. Magento è diventato uno dei software di e-commerce più popolari su Internet ed è utilizzato da molti siti Web di negozi di successo in tutto il mondo.