20 नवंबर 2019 को उत्तर:
आदेश द्वारा छवि को फिर से सक्रिय करना सभी के लिए संभव समाधान नहीं है क्योंकि कुछ वेबसाइट के लिए बहुत समय लगेगा जिसमें बहुत सारे उत्पाद हैं। साथ ही, मुझे कुछ मुद्दों का सामना करना पड़ा जैसे कि अगर हम सीएलआई से कैश इमेज बनाते हैं तो यह काम करेगा। जब हम व्यवस्थापक से छवियों को निकालते हैं या उस समय मैन्युअल रूप से कैश की गई छवि को हटाते हैं, तो यह पेज लोड पर फिर से कैश छवि उत्पन्न नहीं करेगा, इसलिए मुझे बार-बार पुनर्जनन आदेश चलाने की आवश्यकता है। मेरे दृष्टिकोण के अनुसार, पेज लोड पर छवि कैश उत्पन्न करने के लिए सबसे अच्छा समाधान है।
डिफ़ॉल्ट प्रवाह
डिफ़ॉल्ट Magento प्रवाह जब भी छवि (मीडिया) को लोड करता है, तो यह हमेशा पब / 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 पब / मीडिया / कैटलॉग / प्रोडक्ट / कैश / *) डिलीट किया, उसके बाद जब हम पेज को लोड करेंगे तो यह एक नई कैश्ड इमेज उत्पन्न नहीं करेगा और यह ४०४ पेज पर नहीं मिला और भी यह तक पहुँचने कभी नहीं get.php । मैंने तब देखा कि कई फ़ोल्डर्स में फ़ोल्डर्स के लिए 755 और फ़ाइलों के लिए 644 से अलग गलत अनुमतियाँ थीं। मैंने सही अनुमति निर्धारित करने के बाद, यह ठीक काम करता है।
मुझे उम्मीद है कि यह कुछ विचार देता है।