installare magento 2

Installare Magento 2

cd public_html
wget https://getcomposer.org/composer.phar

Per ottenere l’username e la password richieste in fase di installazione è necessario essere registrati sul marketplace di Magento.

php composer.phar global config http-basic.repo.magento.com <public_key> <private_key>

Eventualmente puoi utilizzare le seguenti chiavi:

Public Key: c7af1bfc9352e9c986637eec85ed53af
Private Key: 17e1b72ea5f0b23e9dbfb1f68dc12b53
php composer.phar create-project --repository=https://repo.magento.com/ magento/project-community-edition:2.3 . 
php composer.phar require mageplaza/magento-2-italian-language-pack:dev-master

Installazione da linea di comando:

php bin/magento setup:install \
–db-user=dbuser \
–db-password=dbpassword \
–db-name=magento \
–admin-user=admin \
–admin-password="password" \
–admin-firstname=Nome \
–admin-lastname=Cognome \
–admin-email=mail@domani.tld
php bin/magento setup:static-content:deploy it_IT
php bin/magento indexer:reindex
php bin/magento cache:clean
php bin/magento cache:flush
Readiness check failure in Magento 2

Readiness check failure in Magento 2

Come si può evincere dall’errore readiness check failure il cron risulta non essere configurato correttamente. Ciò comporta che Magento non è in grado di rilevare la versione di PHP e la compatibilità dei vari pacchetti indicati nel file composer.josn. Di seguito tutti gli step da seguire per risolvere l’errore.

Cron failure

Installare il cron di Magento

php bin/magento cron:install

Verificare che il cron sia configurato correttamente

crontab -l

Il risultato sarà simile a questo:

#~ MAGENTO START
* * * * * /usr/bin/php /home/user/public_html/bin/magento cron:run | grep -v Ran jobs by schedule >> /home/user/public_html/var/log/magento.cron.log
* * * * * /usr/bin/php /home/user/public_html/update/cron.php >> /home/user/public_html/var/log/update.cron.log
* * * * * /usr/bin/php /home/user/public_html/bin/magento setup:cron:run >> /home/user/public_html/var/log/setup.cron.log
#~ MAGENTO END

Adesso sarà necessario forzare l’esecuzione del cron:

php bin/magento cron:run
php update/cron.php
php bin/magento setup:cron:run

Nel caso in cui l’errore persiste eliminare i seguenti file:

.setup_cronjob_status
.update_cronjob_status

All’interno della cartella:

public_html/var/

Dependency check

Un altro problema può essere dovuto al conflitto con le dipendenze che nella maggior parte dei casi è causato da un’estensione di terze parti oppure da alcuni vecchi componenti di Magento 2.

La soluzione potrebbe essere quindi quella di rimuovere il tag di sviluppo “require-dev” da composer.json:

"require-dev": {
        "allure-framework/allure-phpunit": "~1.2.0",
        "friendsofphp/php-cs-fixer": "~2.13.0",
        "lusitanian/oauth": "~0.8.10",
        "magento/magento-coding-standard": "~1.0.0",
        "magento/magento2-functional-testing-framework": "~2.3.14",
        "pdepend/pdepend": "2.5.2",
        "phpmd/phpmd": "@stable",
        "phpunit/phpunit": "~6.5.0",
        "sebastian/phpcpd": "~3.0.0",
        "squizlabs/php_codesniffer": "3.3.1"
    },

Memory limit

Il readiness check controlla di avere almeno 1 GB di memoria riservata ai processi PHP ( memory_limit ) che nella maggior parte dei casi dovrebbe essere sufficiente per installare Magento 2 e il suo corretto funzionamento. Tuttavia, si consiglia almeno 2 GB per il debug.

File permission

Le directory nel file system Magento devono essere scrivibili dall’utente di sistema. Se si dispone dell’accesso al servizio SSH, puoi lanciare i seguenti comandi per impostare permessi e proprietà corretti:

find var vendor pub/static pub/media app/etc -type f -exec chmod g+w {} + && find var vendor pub/static pub/media app/etc -type d -exec chmod g+w {} + && chmod u+x bin/magento

Versione PHP

Magento 2 necessità di PHP almeno 7.1.3 mentre l’ultima versione ( 2.3.1 ) è certificato per essere utilizzato con PHP 7.2.11.

E’ necessario inoltre fare molta attenzione ai moduli ed estensioni di terze parti, le stesse devono essere compatibili con PHP 7.1.3 o versione successiva.

Bypass readiness check

Nel caso in cui il problema persiste è possibile disattivare readiness check modificando il seguente script:

Magento/Setup/Controller/Environment.php

sostituendo

$setupCheck = $this->cronScriptReadinessCheck->checkSetup();
$updaterCheck = $this->cronScriptReadinessCheck->checkUpdater();

con

$setupCheck = ['success' => 1];
$updaterCheck = ['success' => 1];
Readiness check failure in Magento 2
Readiness check failure in Magento 2