Magento 2 wordt grotendeels vanaf de opdrachtregel beheerd met bin/magento. Of je nu de cache leegt, opnieuw indexeert, een nieuwe release implementeert of een admin-gebruiker aanmaakt, er is een opdracht voor.
Deze cheat sheet groepeert de commando’s die ik het vaakst gebruik per taak, met korte uitleg en voorbeelden. Voeg het toe aan je bladwijzers, je zult er later op terugkomen.
Alle commando’s worden uitgevoerd vanuit de Magento rootdirectory, als de eigenaar van het bestandssysteem (niet root):
cd /var/www/magento
php bin/magento list
bin/magento list toont elke beschikbare opdracht, inclusief die toegevoegd door extensies.
Cache-opdrachten
Hoe de cache te wissen in Magento 2
bin/magento cache:clean
bin/magento cache:flush
cache:cleanverwijdert items alleen uit de ingeschakelde Magento-cachetypen. Gebruik dit eerst.cache:flushwist de gehele cache-opslag uit, inclusief items van andere applicaties die dezelfde opslag gebruiken. Gebruik het wanneercleanniet genoeg is.
Maak een enkele cachetype schoon
bin/magento cache:clean config layout full_page
Controleer, schakel in en schakel cachetypen uit
bin/magento cache:status
bin/magento cache:enable
bin/magento cache:disable full_page
Laat nooit cachetypes uitgeschakeld in productie. Het is een van de meest voorkomende oorzaken van een trage winkel (zie waarom Magento 2-winkels traag worden).
Indexer-opdrachten
Hoe te herindexeren in Magento 2
bin/magento indexer:reindex
bin/magento indexer:reindex catalog_product_price
Controleer de indexerstatus
bin/magento indexer:status
bin/magento indexer:info
Stel indexer modus in
bin/magento indexer:show-mode
bin/magento indexer:set-mode schedule
bin/magento indexer:set-mode realtime catalogsearch_fulltext
schedule (Bijwerken volgens schema) wordt aanbevolen voor productie. Het opnieuw indexeren gebeurt dan via cron in plaats van bij elke opslaan.
Los een vastgelopen indexeerder op
Als een index in “verwerken” of “herindexering vereist” blijft:
bin/magento indexer:reset catalog_product_price
bin/magento indexer:reindex catalog_product_price
Instellingen en upgrade-opdrachten
Na het installeren of bijwerken van een module
bin/magento setup:upgrade
bin/magento setup:di:compile
bin/magento setup:static-content:deploy -f
bin/magento cache:flush
setup:upgradewerkt het databaseschema en de gegevens bijsetup:di:compilegenereert code voor afhankelijkheidsinjectiesetup:static-content:deploygenereert CSS, JS en afbeeldingen voor de frontend en admin
Houd gegenereerde bestanden tijdens de upgrade.
bin/magento setup:upgrade --keep-generated
Nuttig in implementatiepijplijnen waar de code al is gecompileerd.
Controleer de database status
bin/magento setup:db:status
Implementatie van statische inhoud
Implementatie voor specifieke talen
bin/magento setup:static-content:deploy en_US nl_NL de_DE -f
Implementeer slechts één thema of gebied
bin/magento setup:static-content:deploy --area frontend --theme Hyva/default -f
Versnel de implementatie
bin/magento setup:static-content:deploy -f --jobs 4
De -f (force) vlag is nodig wanneer je niet in de productiemodus bent.
Implementatiemoduscommando’s
bin/magento deploy:mode:show
bin/magento deploy:mode:set production
bin/magento deploy:mode:set developer
Overschakelen naar de productiemodus compileert ook code en implementeert statische inhoud. Gebruik --skip-compilation als je pipeline dat apart afhandelt.
Onderhoudsmodus
bin/magento maintenance:enable
bin/magento maintenance:disable
bin/magento maintenance:status
Sta je eigen IP toe tijdens onderhoud
bin/magento maintenance:enable --ip=203.0.113.10
bin/magento maintenance:allow-ips 203.0.113.10
Module-opdrachten
bin/magento module:status
bin/magento module:enable Vendor_Module
bin/magento module:disable Vendor_Module
bin/magento module:uninstall Vendor_Module
Voer setup:upgrade uit na het inschakelen of uitschakelen van modules.
Cron-opdrachten
bin/magento cron:install
bin/magento cron:run
bin/magento cron:remove
cron:install voegt de Magento cron-taak toe aan de crontab van de huidige gebruiker. Als indexen, e-mails of geplande importen niet draaien, controleer dan eerst de cron.
Admin gebruikerscommando’s
Maak een admin-gebruiker aan
bin/magento admin:user:create --admin-user=jane --admin-password='Str0ngPass!' [email protected] --admin-firstname=Jane --admin-lastname=Doe
Ontgrendel een beheerdersaccount
bin/magento admin:user:unlock jane
Vind de admin-URL
bin/magento info:adminuri
Configuratiecommando’s
bin/magento config:show web/secure/base_url
bin/magento config:set web/secure/base_url https://www.example.com/
bin/magento config:set dev/js/merge_files 0
bin/magento app:config:dump
bin/magento app:config:import
config:set --lock-env schrijft de waarde naar app/etc/env.php zodat deze niet in de admin kan worden gewijzigd. Dit is handig voor omgevingsspecifieke instellingen.
Klant- en catalogusopdrachten
bin/magento customer:hash:upgrade
bin/magento catalog:images:resize
bin/magento catalog:product:attributes:cleanup
catalog:images:resize genereert vooraf productafbeeldingsformaten, zodat de eerste bezoeker niet op hen hoeft te wachten.
Informatie en probleemoplossing
bin/magento --version
bin/magento info:language:list
bin/magento info:currency:list
bin/magento info:timezone:list
bin/magento store:list
bin/magento store:website:list
Typische commando-sequenties
Standaard implementatie
bin/magento maintenance:enable
composer install --no-dev
bin/magento setup:upgrade --keep-generated
bin/magento setup:di:compile
bin/magento setup:static-content:deploy en_US nl_NL -f --jobs 4
bin/magento cache:flush
bin/magento maintenance:disable
“Er lijkt iets mis te zijn na een wijziging”
rm -rf generated/code/* var/view_preprocessed/* pub/static/frontend/*
bin/magento setup:di:compile
bin/magento setup:static-content:deploy -f
bin/magento cache:flush
Wees voorzichtig met rm -rf en verwijder nooit pub/static/.htaccess.
Veelgestelde vragen
Wat is het verschil tussen cache:clean en cache:flush?
cache:clean verwijdert de ingeschakelde cache-items van Magento. cache:flush leegt de gehele cache-opslag, wat ook andere toepassingen kan beïnvloeden die deze delen (bijvoorbeeld een gedeelde Redis-database).
Waarom krijg ik “Toegang geweigerd” wanneer ik bin/magento uitvoer?
Je draait waarschijnlijk als de verkeerde gebruiker. Voer commando’s uit als de eigenaar van het bestandssysteem (vaak www-data of een deploy-gebruiker), nooit als root, anders krijgen gegenereerde bestanden de verkeerde eigenaar.
Heb ik setup:di:compile nodig in de ontwikkelaarsmodus?
Nee. In de ontwikkelaarsmodus wordt code op aanvraag gegenereerd. In de productiemodus is het vereist.
Hoe zie ik welke opdracht een extensie heeft toegevoegd?
Voer bin/magento list uit en zoek naar commando’s met het prefix van de leverancier.
Heeft u hulp nodig met Magento?
Van trage implementaties tot kapotte indexers, ik help teams om Magento 2 soepel en snel te laten draaien. Bekijk mijn Magento 2 en Hyvä service of vraag ondersteuning aan.