Odpowiedź 20 listopada 2019 r .:
Ponowne generowanie pamięci podręcznej obrazów za pomocą polecenia nie jest realnym rozwiązaniem dla wszystkich, ponieważ zajmie to dużo czasu dla niektórych witryn internetowych z dużą ilością produktów. Ponadto napotkałem kilka problemów, takich jak generowanie obrazu pamięci podręcznej z interfejsu CLI, to zadziała. Kiedy opróżniliśmy obrazy od administratora lub ręcznie usunęliśmy obraz z pamięci podręcznej w tym czasie, nie będzie on ponownie generować obrazu pamięci podręcznej przy ładowaniu strony, więc muszę ponownie uruchamiać polecenie regeneracji. Z mojego punktu widzenia najlepszym rozwiązaniem jest wygenerowanie pamięci podręcznej obrazu przy ładowaniu strony.
Domyślny przepływ
Domyślny przepływ Magento odbywa się za każdym razem, gdy ładuje obraz (media), zawsze przechodzi przez żądanie do pub / get.php i sprawdza, czy obraz istnieje, czy nie. Jeśli nie istnieje, wygeneruje nowy buforowany obraz. Jeśli istnieje, zwróci tę ścieżkę. Tak więc domyślnie obraz powinien generować się przy ładowaniu strony.
Możemy sprawdzić to przejście przez logikę w poniższych plikach
pub/media/.htaccess
dla serwera Apache
RewriteRule .* ../get.php [L]
.............................
.............................
nginx.conf.sample
dla serwera nginx
location /media/ {
try_files $uri $uri/ /get.php$is_args$args;
.......................................
.......................................
Jak sprawdzić, czy ta logika działa, czy nie?
Wpisz echo "test";exit;
początek pub / get.php i załaduj dowolny adres URL mediów w pamięci podręcznej, powinien wydrukować test. W przeciwnym razie wystąpi błąd w konfiguracji serwera.
Dla mnie za każdym razem, gdy usuwam katalog pamięci podręcznej katalogu (rm -rf pub / media / catalog / product / cache / *) po tym, gdy ładujemy stronę, nie będzie generować nowego obrazu w pamięci podręcznej, a strona 404 nie zostanie znaleziona i także nigdy nie osiąga get.php . Następnie zauważyłem, że wiele folderów ma niepoprawne uprawnienia inne niż 755 dla folderów i 644 dla plików. Po ustawieniu odpowiedniego uprawnienia działa dobrze.
Mam nadzieję, że daje to pewien pomysł.