Come installare Magento 2 su Plesk
Come installare Magento 2 su Plesk
in questa guida abbiamo visto come installare plesk su Ubuntu ora vediamo invece come creare un dominio e come installiamo Magento 2 su di esso.
Andiamo sulla sezione Domains, clicchiamo su add domains e infine, se abbiamo un dominio registrato scegliamo “Registered domain name” altrimenti “temporary domain name”
a questo punto compiliamo tutti i campi che ci propone il pannello, salvandoci le credenziali per l’accesso ftp ed ssh e clicchiamo add domain.
semplice no?
ora passiamo alla parte più complicata.
Installiamo Magento 2
La versione che andiamo ad installare è la versione 2.4.3 quindi facendo riferimento alla pagina di Requisiti di sistema | Adobe Commerce Developer Guide accertiamoci di aver installato la giusta versione di mariadb e assegnato correttamente il giusto php
adesso clicchiamo sulla sezione Domains->nomedominio.it->php settings e impostiamo i seguenti valori.
-memory_limit – 1GB
-ax_execution_time – 18000
-include_path –
Il resto si può modificare successivamente in base alle nostre esigenze.
Ora andiamo su Domains -> clicchiamo su “nomedominio.it” -> file manager eliminiamo tutto il contenuto di httpdocs e creiamo il file .bash_profile nella cartella di root del dominio (la cartella superiore ad httpdocs per intenderci) e scriviamo quanto segue per Centos7 .
export PATH=/opt/plesk/php/7.4/bin:$PATH alias composer=‘/opt/plesk/php/7.4/bin/php /usr/lib64/plesk-9.0/composer.phar’ cd httpdocs
per Ubuntu/Debian
export PATH=/opt/plesk/php/7.4/bin:$PATH alias composer=‘/opt/plesk/php/7.4/bin/php /usr/lib/plesk-9.0/composer.phar’ cd httpdocs
Ora andiamo su Domains -> clicchiamo su “nomedominio.it” -> Hosting & DNS
-> Web Hosting Access e cambiamo l’impostazione Access to the server over SSH in /bin/bash
Poi andiamo su Domains -> clicchiamo su “nomedominio.it” -> Hosting & DNS
-> Apache & nginx e nella sezione Additional nginx directives scriviamo le seguenti righe.
proxy_buffers 8 16k; proxy_buffer_size 32k;
Ora creiamo un database andando su Domains -> clicchiamo su “nomedominio.it” -> Databases e creiamo il database inserendo nome del db, selezioniamo del menù a tendina del Related site il nostro “nomedominio.it”, creiamo un db user e db passworduser appuntandoceli perchè ci serviranno dopo.
Creazione Servizi richiesti in Docker di Magento 2(.4).
Per installare Magento 2.4 è necessario il servizio Elasticsearch. a questo problema ci viente in aiuto docker, servizio ben implementato e gestito dal pannello.
Quindi accedi, tramite ssh al server dove è hostato plesk, come root ed esegui.
docker run –name=elasticsearch -p 127.0.0.1:9200:9200 -p 127.0.0.1:9300:9300 “elasticsearch:7.6.2
Questo comando installerà il container elasticsearch versione 7.6.2 ma vedrete subito che si stopperà,
questo perchè il container ha bisogno di una variabile che indichi che elasticsearch sarà un singolo nodo e non farà parte di un cluster quindi andiamo su Docker -> elasticsearch -> Settings spuntiamo la casella “Automatic start after system reboot” così che il container parta all’avvio e inseriamo la seguente variabile tra le Environment variables cliccando su Add Variable discovery.type=single-node come nell’immagine.
Diamo OK per salvare le impostazioni.
per verificare che elasticsearch risponda perfettamente alle richieste eseguiamo il seguente comando
curl -X GET “127.0.0.1:9200/”
riceveremo, se tutto è funzionante una risposta simile
{ “name” : “c8c81f7abf07”, “cluster_name” : “docker-cluster”, “cluster_uuid” : “2pKS2-XoRG–L4RGHc93yQ”, “version” : { “number” : “7.10.0”, “build_flavor” : “oss”, “build_type” : “docker”, “build_hash” : “51e9d6f22758d0374a0f3f5c6e8f3a7997850f96”, “build_date” : “2020-11-09T21:30:33.964949Z”, “build_snapshot” : false, “lucene_version” : “8.7.0”, “minimum_wire_compatibility_version” : “6.8.0”, “minimum_index_compatibility_version” : “6.0.0-beta1” }, “tagline” : “You Know, for Search” }
Adesso per installare Magento ci servono le Access Keys ottenibili tramite il sito repo.magento.com in questo modo.
- entriamo nel sito
- creiamo un acconunt
- una volta verificata la mail effettuiamo il log
- clicchiamo in alto a destra sul nostro nome
- clicchiamo su My Profiles
- clicchiamo su Access Keys sotto la categoria My Product
- clicchiamo su Create a New Access Key
- inseriamo un titolo descrittivo
- enjoy
Adesso usciamo da ssh come root e rientriamo con il nome utente creato per il dominio
se avete seguito bene i passi precedenti entrando in ssh le variabili e i riferimenti sono già stati impostati correttamente a questo punto diamo il seguente comando.
composer create-project –repository-url=https://repo.magento.com/ magento/project-community-edition
Il comando ci chiederà username che corrisponde alla Public Key creata in precendenza e la password che corrisponde alla Private Key.
Successivamente scaricherà i pacchetti dal repo e chiederà diverse cose, non preoccupatevi rispondete sempre si.
Al termine del processo il comando riporterà delle informazioni ma nulla di preoccupante è normale.
A questo punto diamo il seguente comando modificando le parti con i nostri dati.
php -d memory_limit=1G bin/magento setup:install –base-url=https://miodominio.it/ –db-host=localhost –db-name=dbname –db-user=db-username –db-password=db-password –admin-firstname=FirstName –admin-lastname=LastName –admin-email=email@email.com –admin-user=adminuser –admin-password=admin-password –language=it_IT –currency=EUR –timezone=Europe/Rome –search-engine=elasticsearch7 –elasticsearch-host=127.0.0.1 –elasticsearch-port=9200 –use-rewrites=1
A questo punto modifichiamo la Document root andando su Domains -> clicchiamo su “nomedominio.it” -> Hosting & DNS -> Hosting Settings e inseriamo, nella riga Document root, httpdocs/pub e clicchiamo su ok.
E infine andiamo tramite Domains -> clicchiamo su “nomedominio.it” -> file manager ad editate il file .htaccess dentro la cartella pub e andiamo a commentare la riga Options +FollowSymLinks il risultato dovrebbe essere simile a questo.
############################################ ## Enable rewrites # Options +FollowSymLinks RewriteEngine on ######################################
Adesso rechiamoci nel percorso /httpdocs/app/etc ed editando il file env.php vedremo il percorso per la parte backend di magento.
esempio:
return [ ‘backend’ => [ ‘frontName’ => ‘admin_xxxx
Quindi andiamo nella pagina web https://nomedominio.it/admin_xxxx comparirà il login
inserendo le credenziali di admin scelte durante questo punto probabilmente vi boccherà l’accesso però è abilitato l’accesso a doppio fattore.
per disabilitarlo ed entrare finalmente nel backend entriamo in ssh come utente del dominio nomedominio.it e diamo il seguente comando.
bin/magento module:disable Magento_TwoFactorAuth
Italianizziamo Magento 2
Entrando in ssh con l’utente di dominio diamo i seguenti comandi
composer require mageplaza/magento-2-italian-language-pack:dev-master php -d memory_limit=6G bin/magento setup:static-content:deploy it_IT php -d memory_limit=4G bin/magento indexer:reindex php -d memory_limit=4G bin/magento cache:clean php -d memory_limit=4G bin/magento cache:flush
Come installare Magento 2 su Plesk
in questa guida abbiamo visto come installare plesk su Ubuntu ora vediamo invece come creare un dominio e come installiamo Magento 2 su di esso.
andiamo sulla sezione Domains, clicchiamo su add domains e infine, se abbiamo un dominio registrato scegliamo “Registered domain name” altrimenti “temporary domain name”
a questo punto compiliamo tutti i campi che ci propone il pannello, salvandoci le credenziali per l’accesso ftp ed ssh e clicchiamo add domain.
semplice no?
ora passiamo alla parte più complicata.
installiamo Magento2
la versione che andiamo ad installare è la versione 2.4.3 quindi facendo riferimento alla pagina di Requisiti di sistema | Adobe Commerce Developer Guide accertiamoci di aver installato la giusta versione di mariadb e assegnato correttamente il giusto php
adesso clicchiamo sulla sezione Domains->nomedominio.it->php settings e impostiamo i seguenti valori
- cmemory_limit – 1GB
- max_execution_time – 18000
- include_path – .
il resto si può modificare successivamente in base alle nostre esigenze.
ora andiamo su Domains -> clicchiamo su “nomedominio.it” -> file manager eliminiamo tutto il contenuto di httpdocs e creiamo il file .bash_profile nella cartella di root del dominio (la cartella superiore ad httpdocs per intenderci) e scriviamo quanto segue
per Centos7
1
2 3 |
export PATH=/opt/plesk/php/7.4/bin:$PATH
alias composer=‘/opt/plesk/php/7.4/bin/php /usr/lib64/plesk-9.0/composer.phar’ cd httpdocs |
per Ubuntu/Debian
1
2 3 |
export PATH=/opt/plesk/php/7.4/bin:$PATH
alias composer=‘/opt/plesk/php/7.4/bin/php /usr/lib/plesk-9.0/composer.phar’ cd httpdocs |
ora andiamo su Domains -> clicchiamo su “nomedominio.it” -> Hosting & DNS -> Web Hosting Access e cambiamo l’impostazione Access to the server over SSH in /bin/bash
poi andiamo su Domains -> clicchiamo su “nomedominio.it” -> Hosting & DNS -> Apache & nginx e nella sezione Additional nginx directives scriviamo le seguenti righe
1
2 |
proxy_buffers 8 16k;
proxy_buffer_size 32k; |
ora creiamo un database andando su Domains -> clicchiamo su “nomedominio.it” -> Databases e creiamo il database inserendo nome del db, selezioniamo del menù a tendina del Related site il nostro “nomedominio.it”, creiamo un db user e db passworduser appuntandoceli perchè ci serviranno dopo.
Creazione Servizi richiesti in Docker di Magento 2(.4).
Per installare Magento 2.4 è necessario il servizio Elasticsearch. a questo problema ci viente in aiuto docker, servizio ben implementato e gestito dal pannello.
Quindi accedi, tramite ssh al server dove è hostato plesk, come root ed esegui.
1 | docker run –name=elasticsearch -p 127.0.0.1:9200:9200 -p 127.0.0.1:9300:9300 “elasticsearch:7.6.2 |
questo comando installerà il container elasticsearch versione 7.6.2 ma vedrete subito che si stopperà
questo perchè il container ha bisogno di una variabile che indichi che elasticsearch sarà un singolo nodo e non farà parte di un cluster quindi andiamo su Docker -> elasticsearch -> Settings spuntiamo la casella “Automatic start after system reboot” così che il container parta all’avvio e inseriamo la seguente variabile tra le Environment variables cliccando su Add Variable
discovery.type=single-node come nell’immagine
diamo OK per salvare le impostazioni.
per verificare che elasticsearch risponda perfettamente alle richieste eseguiamo il seguente comando
1 | curl -X GET “127.0.0.1:9200/” |
riceveremo, se tutto è funzionante una risposta simile
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
{
“name” : “c8c81f7abf07”, “cluster_name” : “docker-cluster”, “cluster_uuid” : “2pKS2-XoRG–L4RGHc93yQ”, “version” : { “number” : “7.10.0”, “build_flavor” : “oss”, “build_type” : “docker”, “build_hash” : “51e9d6f22758d0374a0f3f5c6e8f3a7997850f96”, “build_date” : “2020-11-09T21:30:33.964949Z”, “build_snapshot” : false, “lucene_version” : “8.7.0”, “minimum_wire_compatibility_version” : “6.8.0”, “minimum_index_compatibility_version” : “6.0.0-beta1” }, “tagline” : “You Know, for Search” } |
Adesso per installare Magento ci servono le Access Keys ottenibili tramite il sito repo.magento.com in questo modo
- entriamo nel sito
- creiamo un acconunt
- una volta verificata la mail effettuiamo il log
- clicchiamo in alto a destra sul nostro nome
- clicchiamo su My Profiles
- clicchiamo su Access Keys sotto la categoria My Product
- clicchiamo su Create a New Access Key
- inseriamo un titolo descrittivo
- enjoy
adesso usciamo da ssh come root e rientriamo con il nome utente creato per il dominio
se avete seguito bene i passi precedenti entrando in ssh le variabili e i riferimenti sono già stati impostati correttamente a questo punto diamo il seguente comando
1 | composer create-project –repository-url=https://repo.magento.com/ magento/project-community-edition . |
il comando ci chiederà username che corrisponde alla Public Key creata in precendenza e la password che corrisponde alla Private Key.
successivamente scaricherà i pacchetti dal repo e chiederà diverse cose, non preoccupatevi rispondete sempre si.
al termine del processo il comando riporterà delle informazioni ma nulla di preoccupante è normale.
a questo punto diamo il seguente comando modificando le parti con i nostri dati
1
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
php -d memory_limit=1G bin/magento setup:install \
–base-url=https://miodominio.it/ \ –db-host=localhost \ –db-name=dbname \ –db-user=db-username \ –db-password=db-password \ –admin-firstname=FirstName \ –admin-lastname=LastName \ –admin-email=email@email.com \ –admin-user=adminuser \ –admin-password=admin-password \ –language=it_IT \ –currency=EUR \ –timezone=Europe/Rome \ –search-engine=elasticsearch7 \ –elasticsearch-host=127.0.0.1 \ –elasticsearch-port=9200 \ –use-rewrites=1 |
a questo punto modifichiamo la Document root andando su Domains -> clicchiamo su “nomedominio.it” -> Hosting & DNS -> Hosting Settings e inseriamo, nella riga Document root, httpdocs/pub e clicchiamo su ok.
a questo punto andiamo tramite Domains -> clicchiamo su “nomedominio.it” -> file manager ad editate il file .htaccess dentro la cartella pub e andiamo a commentare la riga Options +FollowSymLinks il risultato dovrebbe essere simile a questo
1
2 3 4 5 6 7 |
############################################
## Enable rewrites
# Options +FollowSymLinks RewriteEngine on
############################################ |
adesso rechiamoci nel percorso /httpdocs/app/etc ed editando il file env.php vedremo il percorso per la parte backend di magento.
esempio:
1
2 3 |
return [
‘backend’ => [ ‘frontName’ => ‘admin_xxxx’ |
quindi andiamo nella pagina web https://nomedominio.it/admin_xxxx comparirà il login
inserendo le credenziali di admin scelte durante questo punto probabilmente vi boccherà l’accesso però è abilitato l’accesso a doppio fattore.
per disabilitarlo ed entrare finalmente nel backend entriamo in ssh come utente del dominio nomedominio.it e diamo il seguente comando.
1 | bin/magento module:disable Magento_TwoFactorAuth |
Italianizziamo Magento 2
entrando in ssh con l’utente di dominio diamo i seguenti comandi
1
2 3 4 5 |
composer require mageplaza/magento-2-italian-language-pack:dev-master
php -d memory_limit=6G bin/magento setup:static-content:deploy it_IT php -d memory_limit=4G bin/magento indexer:reindex php -d memory_limit=4G bin/magento cache:clean php -d memory_limit=4G bin/magento cache:flush |