Magento2 Rigenera il contenuto statico completo


10

Ho rimosso la cartella pub / static mentre ero in modalità sviluppatore, aspettandomi che le cose tornassero come erano. Dopodiché, solo la cartella

_requirejs

è stato generato, quindi ora mi manca tutto - tutti i file CSS e JS sono spariti. Come posso risolvere questo problema? Per favore aiuto.


La directory pub / static è scrivibile dal server web?
Peter O'Callaghan,

sì, è scrivibile dal server web e dall'utente magento. ho dato le autorizzazioni ti 777 per ogni evenienza, per essere assolutamente sicuro
Lachezar Raychev,

drwxrwsrwx 3 ubuntu www-data 4096 Feb 17 17:24 statico le directory app / design / adminhtml / Magento e app / design / frontend / Magento sono empy, non so se sia rilevante
Lachezar Raychev

non posso tornare alla modalità predefinita
Lachezar Raychev,

2
perché hanno reso impossibile ripristinare la visualizzazione predefinita? forse hai cambiato idea e non vuoi che la modalità di produzione distribuisca la tua app
Claudiu Creanga

Risposte:


24

È possibile rigenerare il contenuto statico eseguendo il comando seguente

php bin/magento setup:static-content:deploy

Questo è il comando che avresti eseguito prima di distribuire in modalità di produzione. Se sei in esecuzione in modalità predefinita o sviluppatore, quei file dovrebbero essere generati automaticamente. Suppongo che tu abbia rimosso accidentalmente una cartella che Magento prevede di essere lì - l'esecuzione setup:static-content:deploypotrebbe ripristinare quella cartella o potrebbe causare un errore esplicito sulle cartelle mancanti. In caso contrario, l'errore dovrebbe (si spera!) Fornire informazioni sufficienti per ricostruire le directory mancanti. Potresti voler eseguire il comando in modalità dettagliata

php bin/magento -vvv setup:static-content:deploy

Questo dirà al bin/magentocomando di generare l'eccezione effettiva in caso di errore.


sì, l'ho già trovato. bene che ha una risposta marcata ora. grazie. e non sapevo della cosa -vvv. questo potrebbe essere utile. grazie ancora una volta
Lachezar Raychev,

1
Ironico ... Ho riscontrato questo problema con Magento 2.1.2, seguendo i passaggi per installare Commerce Bug 3. Da Alan Storm. Questa risposta ha risolto il problema però.
Gwideman,

@gwideman Se hai un momento, ti dispiacerebbe farci sapere i problemi che hai riscontrato durante l'installazione di Commerce Bug 3? Siamo interessanti nel migliorare l'esperienza il più possibile entro i limiti impostati da Magento Inc. pulsestorm.net/blog
Alan Storm

1
@AlanStorm Problema probabilmente dovuto al sito (che è un sito di test) in modalità di produzione. In breve, seguendo il README di Commerce Bug, al magento setup:upgradepasso, il messaggio di risultato era "Rieseguire il comando di compilazione Magento". Ho corso magento setup:di:compile. Dopodiché il sito non ha funzionato, senza immagini o altri file statici come js. Fondamentalmente mancavano pub / static / frontend e pub / static / adminhtml. Da qui la necessità di correre setup:static-content:deploy.
Gwideman,

Se sei in sviluppo aggiungi -f per forzare e ottenere l'errore
open-ecommerce.org

5

Ciò che ha causato questo è che quando hai rimosso la cartella pub / static stessa, hai rimosso un file .htaccess necessario per rigenerare il contenuto mentre sei in modalità di produzione. Senza quel file, nessuna risorsa verrà rigenerata automaticamente.

Se questo dovesse succedere di nuovo, potresti copiare quel file da un'altra istanza di Magento 2 (se ne hai un'altra installazione) o provare a ripristinare il file copiando il file .htaccess dal GitHub di Magento: https://github.com/magento/magento2 /blob/develop/pub/static/.htaccess

Per evitare che ciò accada, svuotare il contenuto di una cartella solo nella directory pub / static, come frontend o adminhtml.


3

È possibile seguire i passaggi seguenti: -

1. Delete all folders under pub/static
2. Delete var/cache
3. Delete var/composer_home
4. Delete var/generation
5. Delete var/page_cache
6. Delete var/view_preprocessed

Ora apri il prompt dei comandi e vai all'installazione root di magento 2 ed esegui i seguenti comandi

php bin / magento setup: static-content: deploy


3

Devi solo eseguire questo comando per generare contenuto statico:

php bin/magento setup:static-content:deploy

Assicurati che il proprietario di pub static sia uguale al proprietario Magento.

Assicurati di avere il file .htaccess richiesto nella tua cartella.


3
  1. Rimuovi tutte le cartelle in pub/static
  2. Rimuovere var/cache
  3. Rimuovere var/composer_home
  4. Rimuovere var/generation
  5. Rimuovere var/page_cache
  6. Rimuovere var/view_preprocessed

Dopo questo, vai alla radice di Magento 2 ed esegui:

php bin/magento setup:static-content:deploy

0

Se hai rimosso il file .htaccess potresti avere molti problemi. (ricevendo 404 errori quando provi ad accedere ai tuoi file css + javascript e quant'altro.

Se questo ti sta succedendo, il modo migliore che ho trovato per risolvere questo problema è scaricare di nuovo magento zip o tar ed estrarre la cartella pub / static nella directory del tuo progetto. Ciò dovrebbe includere il file .htaccess e correggere eventuali problemi.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.