카탈로그 캐시 이미지 문제 재생성


19

Magento 1.9.2.4에서 Magento 2.1.6으로 마이그레이션 프로세스를 수행하고 있습니다. 마이그레이션이 완료된 후 M1의 미디어 폴더를 pub / media M2로 이동합니다.

이제 문제는 일부 이미지가 카탈로그 / 캐시 폴더에서 생성되지 않는다는 것입니다.

예를 들어 아래 이미지는 404를 찾을 수 없습니다.

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

카탈로그 캐시 폴더를 삭제하고 페이지를 다시로드하는 것을 좋아했지만 여전히 깨진 이미지로 이동합니다.

내 페이지에 깨진 이미지의 50 %가 있습니다

여기에 이미지 설명을 입력하십시오

이 문제를 해결하기위한 대안을 공유 할 수 있습니까?


안녕하세요 bilal 도와주세요 magento.stackexchange.com/questions/283277/…
Nagaraju K

답변:


28

필요한 모든 크기 조정을 미리 생성하려면 image resize 명령을 사용해야합니다.

php bin/magento catalog:image:resize

이 명령은 테마 XML에 정의 된 모든 이미지 크기를 가져 와서 올바른 폴더에 이미지를 사전 생성합니다.

자세한 내용은 명령 설명서를 참조하십시오. http://devdocs.magento.com/guides/v2.1/frontend-dev-guide/themes/theme-images.html


5
참고-이 명령은 모든 크기의 저장소에서 실행하는 데 절대적으로 걸립니다. 우리는 최근 달리기에서 17 시간 이상을 보았습니다. 다른 경우에는 주말 동안 운영해야했습니다. 참조 : github.com/magento/magento2/issues/8145
Leland

나는 같은 문제가 발생
했습니다이

1
php bin / magento catalog : image : resize를 사용하는 경우 1 일 이상이 걸리며 다른 최상의 방법은 무엇입니까?
Soundararajan m


snipboard.io/JZ2bQR.jpg를 사용하여 Magento 1에서 Magento 2 이미지를 얻는 중 캐시 문제를 해결하는 방법은 무엇입니까? @ 알렉스
보석

0

나는 또한이 문제가 있었고 위에서 언급 한 명령 줄 이미지 생성도 작동하지 않았습니다. Magento 가 썸네일이 생성 된 정보를 캐싱하는 것으로 보이며 표준 Magento 캐시 클리닝 (명령 줄 또는 관리자 패널 모두)도이 정보를 캐시에서 제거하지 않습니다.

모든 캐시 디렉토리 내용을 수동으로 제거하고 도움이되었습니다.

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

.. 등등. 그런 다음 사이트를 탐색하는 동안 이미지 축소판이 제대로 "주문형"으로 생성되어야합니다.


0

나는 똑같은 문제가 있었지만 Magento 2.3.2에서

나를 위해 잘못된 캐시 해시 경로가있는 제품 축소판 이미지였습니다. 제품 및 카테고리 이미지는 정확했지만 엄지 손가락 URL이 올바르지 않으며 std Magento 이미지 자리 표시자를 표시합니다.

나는 커스텀 테마를 사용하고 있었다.

SHH "php bin / magento catalog : images : resize"를 사용할 때-무슨 일이 있었나요? 이미지는 사용자 정의 테마 etc / view.xml 파일 대신 Luma 테마 etc / view.xml을 사용하여 생성되었습니다.

문제입니다. Luma 테마와 다른 크기의 이미지를 사용하는 브라우저에서 내 사용자 정의 테마를 볼 때 Magento가 이미지를 찾지 못하여 404 오류를 표시합니다.

수정.

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

이 문제를 해결하는 방법을 찾기 위해 일주일이 걸렸지 만 이제는 모두 잘 작동합니다.



0

2019 년 11 월 20 일 답변 :

많은 제품이있는 일부 웹 사이트에는 시간이 오래 걸리기 때문에 명령으로 이미지 캐시를 재생 하는 것은 실현 가능한 솔루션이 아닙니다. 또한 CLI에서 캐시 이미지를 생성하면 작동합니다. 우리가 관리자에서 이미지를 플러시하거나 캐시 된 이미지를 수동으로 삭제하면 페이지로드시 다시 캐시 이미지가 생성되지 않으므로 다시 생성 명령을 반복해서 실행해야합니다. 내 관점에 따르면 가장 좋은 해결책은 페이지로드시 이미지 캐시를 생성하는 것입니다.

기본 흐름

기본 Magento 흐름은 이미지 (미디어)를로드 할 때마다 항상 pub / get.php에 대한 요청을 통과하고 이미지가 존재하는지 여부를 확인합니다. 존재하지 않으면 새로운 캐시 된 이미지를 생성합니다. 존재하는 경우 해당 경로를 반환합니다. 따라서 기본적으로 이미지는 페이지로드시 생성되어야합니다.

아래 파일에서이 통과 논리를 확인할 수 있습니다

pub/media/.htaccess대한 아파치 서버

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

nginx.conf.sample대한 의 nginx 서버

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

이 논리가 작동하는지 확인하는 방법은 무엇입니까?

넣어 echo "test";exit;술집 / get.php의 시작과 캐쉬 미디어 URL을로드, 그것은 테스트를 인쇄해야합니다. 그렇지 않으면 서버 구성에 문제가 있습니다.

나를 위해, 페이지를로드 할 때 카탈로그 캐시 디렉토리 (rm -rf pub / media / catalog / product / cache / *)를 삭제할 때마다 새로운 캐시 된 이미지가 생성되지 않고 404 페이지를 찾을 수 없습니다. 또한 get.php에 도달하지 않습니다 . 그런 다음 많은 폴더가 폴더의 경우 755와 파일의 경우 644와 다른 잘못된 권한을 가지고 있음을 알았습니다. 올바른 권한을 설정하면 정상적으로 작동합니다.

나는 그것이 약간의 아이디어를 제공하기를 바랍니다.


모든 도움 magento.stackexchange.com/q/296715/57334 덕분에 @Bilal Usean
zus
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.