मुझे लगता है कि मुझे GoogleImageProxy समस्या का पता चल गया है।
यह CACHING अवधारणा से संबंधित कुछ है। मान लीजिए, आपने हाल ही में अपने सर्वर पर अपना php कोड तैनात किया है लेकिन आप चित्र अपलोड करना भूल गए हैं। आपने अपने ईमेल तर्क के साथ एक बार परीक्षण किया। आपके सिस्टम ने एक HTML ईमेल तैयार किया। जब यह ईमेल gmail सर्वर से टकराएगा तो GoogleImageProxy आपकी साइट से छवियों को अपने प्रॉक्सी सर्वर पर लाने और संग्रहीत करने का प्रयास करेगा। छवियों को प्राप्त करते समय, GoogleImageProxy ने आपकी लापता छवियों के विरुद्ध 404 स्थितियाँ और कुछ संरक्षित छवियों के विरुद्ध 403 पाया। GoogleImagesProxy ने अपने स्वयं के प्रॉक्सी सर्वर में इन स्थितियों को संग्रहीत किया है।
अब अपना ईमेल खोलने की कोशिश की, आपने अपनी छवियों के खिलाफ कुछ 404 स्थितियों पर ध्यान दिया। यह कुछ समझ में आता है। आपको तुरंत महसूस हुआ कि आप कुछ चित्र अपलोड करना भूल गए हैं, इसलिए आपने उन्हें अपने सर्वर पर अपलोड कर दिया है। और भी आप संरक्षित छवियों के खिलाफ कुछ अनुमति तय की है।
आप सब अब कर रहे हैं अब आप अपनी php-email स्क्रिप्ट को एक बार फिर से चलाने का प्रयास करें। परिणामस्वरूप आप अपने जीमेल या हॉटमेल इनबॉक्स में एक और ईमेल प्राप्त करते हैं। आपने अपनी छवियों के साथ सभी मुद्दों को निर्धारित किया था। अब छवियों को आपके ईमेल सामग्री में प्रदर्शित किया जाना चाहिए। लेकिन आप अभी भी छवियों को देखने में असमर्थ हैं।
आह, संभवतः आप अपने ब्राउज़र का कैश साफ़ करना भूल गए हैं। अपने ब्राउज़र का कैश साफ़ करें और gmail या हॉटमेल पेज को एक बार फिर लोड करें। लेकिन परिणाम अभी भी वही होगा। दर्जनों फिक्स / पैच लगाने की कोशिश करें और अपनी php-email स्क्रिप्ट को हजारों बार चलाने का प्रयास करें। लेकिन परिणाम अभी भी वही होगा। कोई सुधार नहीं।
वास्तविक समस्या
क्या तमाशा चल रहा है? इसे मैं तुम्हें समझाता हूं। अपने प्रवेश लॉग पर जाएं और GoogleImageProxy से अनुरोध खोजने का प्रयास करें। आपको यह देखकर आश्चर्य होगा कि GoogleImageProxy से आपके ईमेल में उपयोग की जाने वाली विभिन्न छवियों की संख्या के आधार पर केवल 2 या 3 तीन अनुरोध होंगे। GoogleImageProxy ने कभी भी छवियों को लाने की कोशिश नहीं की, भले ही आपने लापता छवियों को अपलोड करके और संरक्षित छवियों के लिए अनुमतियाँ सेट करके अपनी छवियों के साथ समस्याओं को ठीक किया हो। क्यों? आपके ब्राउज़र के कैश को साफ़ करने से कोई प्रभाव नहीं पड़ता है। GoogleImageProxy आपके नए ईमेल के लिए भी कभी भी नई छवियों को नहीं लाएगा क्योंकि चित्र अब GoogleImageProxy में उनके अंतिम स्थिति कोड के साथ कैश किए गए हैं और आपके स्वयं के ब्राउज़र में कैश नहीं किए गए हैं।
GoogleImageProxy ने छवियों के लिए अपनी स्वयं की समाप्ति तिथि निर्धारित की है। मुझे लगता है कि एक महीना। इसलिए अब एक्सपायरी डेट के बाद छवियों की नई प्रति प्राप्त की जाएगी। मेरा मतलब एक महीने के बाद। आप GoogleImageProxy को छवियों को लाने के लिए बाध्य नहीं कर सकते। लेकिन आपके लिए यह महत्वपूर्ण है कि आप अपने ईमेल में चित्र प्रदर्शित करें। इसका क्या हल हो सकता है?
समाधान
GoogleImageProxy को आपकी छवियों को लाने के लिए बाध्य करने का एकमात्र तरीका निम्नलिखित है
- केवल png, jpg या gif एक्सटेंशन के साथ अपनी छवियों को किसी और चीज़ में बदलें।
- अपनी छवि url जैसे किसी भी प्रकार के क्वेरी स्ट्रिंग का उपयोग न करें
?t=34343
- आपकी छवि में एक्सटेंशन के रूप में png, jpg या gif शामिल होना चाहिए।
- आपकी छवि url को आपकी छवि पर सीधे मैप किया जाना चाहिए।
- यदि आपको अपनी संरक्षित छवियों के लिए कुछ प्रॉक्सी यूआरएल का उपयोग करने की आवश्यकता है, तो आपकी प्रतिक्रिया में उचित हेडर शामिल होना चाहिए
Content-Type: image/jpeg
- फ़ाइल एक्सटेंशन और सामग्री-प्रकार हेडर का मिलान होना चाहिए
- स्टेटस-कोड 403, 500 आदि के बजाय 200 होना चाहिए
महत्वपूर्ण लेख
Php-email स्क्रिप्ट के हर रन के लिए पूरी प्रक्रिया दोहराने की कोशिश करें। क्योंकि हर बार GoogleImageProxy आपकी छवियों को कैश कर देगा और आपको हर नई कोशिश के लिए उसी प्रक्रिया को दोहराना होगा।
उम्मीद है कि यह अधिकांश लोगों के लिए इस मुद्दे को ठीक कर देगा।