दिलचस्प पोस्ट
धुंधला ट्रे आइकन Backbone.sync अद्यतन को PUT के बजाय POST का उपयोग करने के लिए मजबूर करने के लिए कम से कम बदसूरत तरीका क्या है? एचटीएमएल पाठ इनपुट की पुष्टि करें क्योंकि यह टाइप किया गया है मैं दो अलग-अलग डोमेन में कुकीज़ का उपयोग कैसे करूं? आप एक ब्राउज़र के संस्करण का कैसे पता लगा सकते हैं? UITableView iOS6 के निचले भाग में UIRefreshControl? Node.js – अधिकतम कॉल स्टैक आकार पार हो गया है जावास्क्रिप्ट ES6 क्रॉस-ब्राउज़र का पता लगाने गैर-सीआरयूडी संचालन एक शोकहारा सेवा में है छपाई यूटीएफ -8 स्ट्रिंग्स printf-wide vs. multibyte स्ट्रिंग literals SQL में यादृच्छिक पंक्ति का अनुरोध कैसे करें? java.io.NotSerializableException एक डाटाबेस से दूसरे डेटाबेस में डेटा स्थानांतरण पेड़ की गहराई और ऊंचाई के बीच अंतर क्या है? यूनिकोड से “ “ “ “ “ “ “ “ “ “ “ “ “ “ `

अपाचे को सीएसएस और जेएस फाइलों की मैन्युअल रूप से पूर्व संकुचित जीज़ फ़ाइल का उपयोग कैसे करें?

मेरे पास सरल सवाल है मेरे पास वेबडिनेरीरी /css और अंदर फ़ाइल style.css है I मैंने मैन्युअल रूप से इस फ़ाइल को gzipped किया है और इसे style.css.gz रूप में सहेजा है। मैं प्रत्येक अनुरोध पर सीएसएस फ़ाइल को संकुचित नहीं करने के लिए CPU चक्रों को सहेजना चाहता हूं। मैं इस .gz फ़ाइल को देखने के लिए अपाचे को कैसे कॉन्फ़िगर कर सकता हूं और इसे फिर से .css फ़ाइल को संपीड़ित करने की बजाय सेवा देता हूं?

नोट: मैं अपाचे को .gz फ़ाइल बनाने के लिए नहीं चाहता। मेरे परिदृश्य में मुझे .css.gz फ़ाइल मैन्युअल रूप से बनाना है – विशिष्ट अनुरोधों पर PHP का उपयोग करना।

Solutions Collecting From Web of "अपाचे को सीएसएस और जेएस फाइलों की मैन्युअल रूप से पूर्व संकुचित जीज़ फ़ाइल का उपयोग कैसे करें?"

कुछ पुन: लिखने वाले नियम को काफी अच्छी तरह से संभालना चाहिए

एक Drupal कॉन्फ़िगरेशन फ़ाइल में मैंने पाया:

 # AddEncoding allows you to have certain browsers uncompress information on the fly. AddEncoding gzip .gz #Serve gzip compressed CSS files if they exist and the client accepts gzip. RewriteCond %{HTTP:Accept-encoding} gzip RewriteCond %{REQUEST_FILENAME}\.gz -s RewriteRule ^(.*)\.css $1\.css\.gz [QSA] # Serve gzip compressed JS files if they exist and the client accepts gzip. RewriteCond %{HTTP:Accept-encoding} gzip RewriteCond %{REQUEST_FILENAME}\.gz -s RewriteRule ^(.*)\.js $1\.js\.gz [QSA] # Serve correct content types, and prevent mod_deflate double gzip. RewriteRule \.css\.gz$ - [T=text/css,E=no-gzip:1] RewriteRule \.js\.gz$ - [T=text/javascript,E=no-gzip:1] 

यह नौकरी कर देगा। आप इसे <Directory foo/> अनुभाग में या .htaccess फ़ाइल में रख सकते हैं अगर आपके पास एपाचे कॉन्फ़िगरेशन तक पहुंच नहीं है या यदि आप अपना वेबसर्वर मंदी बनाना चाहते हैं

रेगिलर पर जारी रखने का उत्तर देते हुए आपको यह सुनिश्चित करने के लिए कि संबंधित सामग्री-एन्कोडिंग हैडर के साथ सर्वर का जवाब भी कुछ और लाइनें जोड़ना चाहिए:

 #Serve gzip compressed CSS files if they exist and the client accepts gzip. RewriteCond %{HTTP:Accept-encoding} gzip RewriteCond %{REQUEST_FILENAME}\.gz -s RewriteRule ^(.*)\.css $1\.css\.gz [QSA] # Serve gzip compressed JS files if they exist and the client accepts gzip. RewriteCond %{HTTP:Accept-encoding} gzip RewriteCond %{REQUEST_FILENAME}\.gz -s RewriteRule ^(.*)\.js $1\.js\.gz [QSA] # Serve correct content types, and prevent mod_deflate double gzip. RewriteRule \.css\.gz$ - [T=text/css,E=no-gzip:1,E=is_gzip:1] RewriteRule \.js\.gz$ - [T=text/javascript,E=no-gzip:1,E=is_gzip:1] Header set Content-Encoding "gzip" env=is_gzip 

मुझे एहसास हुआ कि यह वही नहीं है जो आपने पूछा, लेकिन मैं इसे वहां से बाहर निकाल रहा हूं। क्या आपने mod_cache साथ बस mod_gzip का उपयोग करने पर विचार किया है? सही कॉन्फ़िगरेशन एपाचे के साथ फाइल आपको ग़्ज़िप करने के बाद आप संकुचित कैश फ़ाइलों को क्लाइंट और डाउनस्ट्रीम प्रॉक्सी के पास भेज देंगे। बैंडविड्थ और कम्प्यूटेशनल लोड के संदर्भ में आप समय और प्रयास के संदर्भ में जो प्रस्तावित करते हैं और उतना ही कुशलता से यह अधिक कुशल है।

इससे कोई फर्क नहीं पड़ता कि PHP ने पहले फ़ाइलों को संकुचित कर दिया है क्योंकि सही सेटिंग्स के साथ mod_gzip पता लगाएगा कि मुख्य बिंदु यह है कि आप संकुचित फ़ाइलों को कैश कर सकते हैं और अपाचे उन्हें पुन: संसाधित नहीं करेगा।

यह ब्लॉग पोस्ट बिल्कुल कदम से कदम के लिए आप देख रहे थे नहीं है?

हम जांचते हैं कि फ़ाइल का यह जिप्प संस्करण मौजूद है (चौथी पंक्ति), और यदि ऐसा होता है, तो हम .gz को अनुरोधित फ़ाइल नाम से जोड़ते हैं

mod_rewrite (और क्यू-वैल्यू , स्थिति 406 , mod_negotiation , आदि) की तरह अधिक उन्नत विशेषताओं पर गायब होकर आप सामग्री बातचीत को लागू करने के बजाय आप इस प्रश्न में चर्चा किए गए अनुसार mod_negotiation का उपयोग करना चाह सकते हैं। वहां से मेरे उत्तर की प्रतिलिपि बनाना:

 Options +MultiViews RemoveType .gz AddEncoding gzip .gz <FilesMatch ".+\.tar\.gz$"> RemoveEncoding .gz # Note: Can use application/x-gzip for backwards-compatibility AddType application/gzip .gz </FilesMatch> 

इसमें .css.gz और .js.gz बजाय सभी .gz फ़ाइलों के लिए काम करने का अतिरिक्त बोनस है और अतिरिक्त एन्कोडिंग के लिए आसानी से बढ़ाया जा रहा है।

इसमें एक बड़ी समस्या है, क्योंकि केवल फाइलों के लिए अनुरोध जो मौजूद नहीं हैं, foo.js नामक एक फ़ाइल पर foo.js कर रहे हैं /foo.js (लेकिन /foo ) के लिए अनुरोध करना असम्पीडित संस्करण वापस नहीं करेगा इसे डबल एक्सटेंशन के साथ असम्पीडित फाइलों का नाम बदलने के फ्रांकोइस मारिएर के समाधान का उपयोग करने से बचा जा सकता है, इसलिए foo.js को foo.js.js रूप में तैनात किया foo.js.js । यदि यह प्रतिबंध आपके परिनियोजन प्रक्रिया के लिए बहुत दर्दनाक नहीं है, तो mod_negotiation का उपयोग करने पर विचार के लायक हो सकता है।