2010-08-02 18 views
13

से एचटीएमएल पृष्ठों के साथ जीजेआईपी का उपयोग करना क्या किसी को अमेज़ॅन एस 3 का उपयोग कर gzipped HTML पृष्ठों की सेवा करने वाली किसी भी समस्या का पता है। मैं (यानी संकुचित HTML, सीएसएस और जावास्क्रिप्ट फ़ाइलों को सेवा) हमारे HTML फ़ाइलों का फ़ाइल आकार को कम करने की जरूरत है - लेकिन चिंतित है कि या तो हूँ:अमेज़ॅन एस 3

  1. अमेज़न S3 अप Gzipped फ़ाइलों को सही ढंग की सेवा नहीं करता है ब्राउज़र जो अनुरोध करता है। या,

  2. कुछ ब्राउज़रों को gzipped सामग्री पढ़ने में परेशानी होती है। मैं समझता हूं कि पुराने ब्राउज़र gzipped सामग्री (जैसे आईई 6 और इससे पहले) का समर्थन नहीं करते हैं - और कुछ (आधुनिक?) एंटी-वायरस सॉफ़्टवेयर सामग्री-एन्कोडिंग हेडर को स्ट्रिप करेगा।

मैं असम्पीडित एचटीएमएल (जो मेरा मानना ​​है कि अमेज़न S3 आसानी से समर्थन करेंगे) को सर्व करने की जरूरत है - या मैं आश्वस्त रहें कि कि अधिकांश आधुनिक ब्राउज़र मेरी Gzipped सामग्री ठीक संभाल लेंगे?

उत्तर

2

अमेज़ॅन एस 3 स्वचालित रूप से gzipped सामग्री का समर्थन नहीं करता है, लेकिन आप सामग्री अपलोड करने से पहले सामग्री एन्कोडिंग हेडर मैन्युअल रूप से बदल सकते हैं। सामग्री सामग्री gzip के रूप में सामग्री को कर्तव्यपूर्वक सेवा प्रदान करेगा। हालांकि, यदि आपके फ़ाइल एक्सटेंशन .gz हैं, तो सफारी इसे अनुलग्नक की तरह मानेंगे, इसलिए आपको फ़ाइल एक्सटेंशन के रूप में .jgz का उपयोग करना होगा।

+0

यह आवश्यक रूप से सही नहीं है। विस्तार से कम करने के लिए ब्राउजर द्वारा फ़ाइल का व्यवहार सामग्री-प्रकार और सामग्री-एन्कोडिंग प्रतिक्रिया शीर्षलेख के साथ किया जाता है। – thesmart

+1

थीस्मार्ट - मैंने इसका परीक्षण किया और पाया कि सफारी सामग्री-एन्कोडिंग = gzip का सम्मान नहीं करेगा अगर फ़ाइल एक्सटेंशन .gz है, लेकिन मैंने टेस्ट अप –

+0

माइकल: आह, यह नहीं पता था कि आप एक बग का जिक्र कर रहे थे सफारी में .gz.js मेरे अनुभव से एक्सटेंशन के रूप में ठीक काम करता है। – thesmart

11

Gzip फ़ाइल और अपलोड करने से पहले S3 वस्तु के लिए निम्न मेटाडाटा प्रविष्टि जोड़ने:

Content-Encoding=gzip
+0

यह ब्राउज़र में एक ERR_CONTENT_DECODING_FAILED उत्पन्न कर रहा है, सबसे अच्छा स्क्रिप्ट बनाना है जो gzip संपीड़न को स्वचालित करें, फिर s3 पर अपलोड करें। – panchicore

+0

फ़ाइल अपलोड करने से पहले मैन्युअल रूप से gzipped किया जाना है – jujule