Rigenera i problemi relativi alle immagini della cache del catalogo


19

Sto eseguendo il processo di migrazione da Magento 1.9.2.4 a Magento 2.1.6, dopo la migrazione completata, sposto la cartella multimediale di M1 in pub / media M2.

Ora il problema è che alcune delle immagini non vengono generate nella cartella del catalogo / cache

Ad esempio sotto le immagini vanno a 404 non trovate

pub/media/catalog/product/cache/f9c7fbe9b524c081a3ccf800cbd963eb/m/s/msj006c-red_2.jpg
pub/media/catalog/product/cache/75eed2686e01eb22cb4050b2f40ddf97/m/s/msj006c-red_2.jpg
pub/media/catalog/product/cache/f9c7fbe9b524c081a3ccf800cbd963eb/m/s/msj006c-red_2.jpg

Mi è piaciuto semplicemente eliminare la cartella della cache del catalogo e caricare di nuovo la pagina, ma continua ad andare all'immagine rotta.

La mia pagina contiene il 50% delle immagini rotte

inserisci qui la descrizione dell'immagine

può condividere la soluzione alternativa per risolvere questo problema?


Ciao bilal, per favore, puoi aiutarmi e suggerire magento.stackexchange.com/questions/283277/…
Nagaraju K

Risposte:


29

Dovresti provare a usare il comando ridimensionamento immagine per pre-generare tutti i ridimensionamenti necessari.

php bin/magento catalog:image:resize

Questo comando ottiene tutte le dimensioni delle immagini che sono state definite nel tema XML e prepara le immagini nelle loro cartelle corrette.

È inoltre possibile consultare la documentazione dei comandi per ulteriori informazioni http://devdocs.magento.com/guides/v2.1/frontend-dev-guide/themes/theme-images.html


5
Cordiali saluti - questo comando richiede assolutamente un'eternità per essere eseguito su un negozio di qualsiasi dimensione. Abbiamo visto verso l'alto di 17 ore in una corsa recente. In altre occasioni, doveva essere investito per un fine settimana. Vedi: github.com/magento/magento2/issues/8145
Leland

avevo lo stesso problema che ho eseguito queste immagini che mostrano cmd ma dopo la cache a livello di tutte le immagini rotto di nuovo e non ci sono immagini nella cartella della cache
imtiazau

1
Se usi php bin / magento catalog: image: ridimensiona, ci vorranno più di 1 giorni, e qualche altro metodo migliore?
Soundararajan m

@Alex Dinca potresti aiutarmi per favore in questo magento.stackexchange.com/questions/283277/…
Nagaraju K

Ricevo immagini di Magento 2 da Magento 1 usando snipboard.io/JZ2bQR.jpg , come risolvere il problema della cache? @Alex
Gem

0

Ho anche avuto questo problema e anche la generazione di immagini della riga di comando sopra menzionata non ha funzionato. Sembra che Magento stia memorizzando nella cache le informazioni create dall'anteprima e persino la pulizia standard della cache di Magento (sia la riga di comando che il pannello di amministrazione) non rimuove queste informazioni dalla cache.

Ho rimosso manualmente tutti i contenuti delle directory della cache e mi ha aiutato:

rm -Rf var/cache/*
rm -Rf var/page_cache/*

.. e così via. Quindi le miniature delle immagini dovrebbero generare correttamente "su richiesta" durante la navigazione del sito.


0

Ho avuto lo stesso identico problema ma con Magento 2.3.2

Per me erano le immagini in miniatura del prodotto che avevano il percorso hash della cache sbagliato. Le immagini dei prodotti e delle categorie erano corrette, ma l'URL dei pollici non era corretto e mostrava il segnaposto immagine Magento standard.

Stavo usando un tema personalizzato.

Quando si utilizza SHH "php bin / magento catalog: images: resize" - cosa stava succedendo? Le immagini venivano generate utilizzando il tema Luma etc / view.xml anziché il file personalizzato etc / view.xml.

Il problema. Durante la visualizzazione del mio tema personalizzato nel browser che utilizza immagini di dimensioni diverse rispetto al tema Luma, Magento non è riuscito a trovare le immagini e mostra un errore 404.

La correzione

Replace Luma themes etc/view.xml with my custom theme etc/view.xml
Using SHH run "php bin/magento catalog:images:resize

Mi ci è voluta una settimana per scoprire come risolvere questo problema, ma ora funziona tutto bene.



0

Risposta del 20 novembre 2019:

Rigenerare la cache di immagini per comando non è una soluzione fattibile per tutti perché ci vorrà molto tempo per alcuni siti Web che hanno molti prodotti. Inoltre, ho riscontrato alcuni problemi come Se generiamo un'immagine cache dalla CLI, funzionerà. Quando scarichiamo le immagini dall'amministratore o eliminiamo manualmente l'immagine memorizzata nella cache in quel momento, non verrà generata nuovamente un'immagine cache al caricamento della pagina, quindi devo eseguire il comando rigenerare ancora e ancora. Secondo il mio punto di vista, la soluzione migliore è quella di generare cache di immagini al caricamento della pagina.

Flusso predefinito

Il flusso Magento predefinito è ogni volta che carica l'immagine (media), passerà sempre attraverso la richiesta a pub / get.php e verificherà se l'immagine esiste o no. Se non esiste, genererà una nuova immagine memorizzata nella cache. Se esiste, restituirà quel percorso. Quindi, per impostazione predefinita, l'immagine dovrebbe generare al caricamento della pagina.

Possiamo verificare questo passaggio attraverso la logica nei file seguenti

pub/media/.htaccessper server apache

RewriteRule .* ../get.php [L]
.............................
.............................

nginx.conf.sampleper server nginx

location /media/ {
    try_files $uri $uri/ /get.php$is_args$args;
    .......................................
    .......................................

Come verificare che questa logica funzioni o no?

Inserisci echo "test";exit;l'inizio di pub / get.php e carica qualsiasi URL dei supporti memorizzati nella cache, dovrebbe stampare il test. Altrimenti qualcosa non va nella configurazione del tuo server.

Per me, ogni volta che ho eliminato la directory della cache del catalogo (rm -rf pub / media / catalog / product / cache / *) dopo che quando cariciamo la pagina non genererà una nuova immagine cache e andrà a 404 pagine non trovate e inoltre non raggiunge mai get.php . Ho quindi notato che molte delle cartelle avevano autorizzazioni errate diverse da 755 per le cartelle e 644 per i file. Dopo aver impostato il permesso giusto, funziona benissimo.

Spero che abbia qualche idea.


Qualsiasi aiuto magento.stackexchange.com/q/296715/57334 grazie @Bilal Usean
zus
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.