2012-01-25 17 views
7

मैंने अपाचे में mod_deflate को सक्षम करने के लिए कई ट्यूटोरियल्स में सभी चरणों का पालन किया है, लेकिन जब भी मैं जेसन (PHP स्क्रिप्ट के माध्यम से) के लिए अपने स्थानीय लोगों के लिए अनुरोध जारी करता हूं, तब भी मैं संपीड़न (फिडलर में) नहीं देख रहा हूं वेब सर्वर। मेरे ब्राउज़र के लिए स्थानीयहोस्ट पर संपीड़न आवश्यक नहीं है लेकिन मेरी मशीन को समय-समय पर धीमी वीपीएन पर उजागर किया जाएगा, इसलिए मैं इसका उपयोग करना चाहता हूं।अपाचे mod_deflate जेसन आउटपुट को संपीड़ित नहीं कर रहा

LoadModule deflate_module modules/mod_deflate.so (नहीं टिप्पणी की-आउट)

mod_deflate.so Apache2/मॉड्यूल में मौजूद है

PHP स्क्रिप्ट तुरंत जब चलाने निम्नलिखित हैडर सेट:

httpd.conf से

header('Content-Type: application/json');

application/json अपाचे 2/conf/mime.types

में मौजूद है और यह आर है माइम-प्रकार पर httpd.conf से elevant अनुभाग है कि संकुचित किया जाना चाहिए:

Alias /mapguide "C:/Program Files/OSGeo/MapGuide/Web/www/" 
<Directory "C:/Program Files/OSGeo/MapGuide/Web/www/"> 
    AllowOverride All 
    Options All -Indexes 
    Order allow,deny 
    Allow from all 

... 

    # Content compression 
    AddType text/javascript js jgz 
    AddOutputFilterByType DEFLATE text/javascript application/json text/html 

    RewriteEngine on 
    RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization},L] 
</Directory> 

जब मैं सर्वर अनुरोध हेडर शामिल हैं Accept-Encoding: gzip, deflate के लिए एक अनुरोध जारी है, लेकिन प्रतिक्रिया वापस असम्पीडित आता है। मैंने प्रत्येक .conf परिवर्तन के बाद अपाचे को पुनरारंभ किया है।

कोई भी सुझाव बहुत स्वागत है!

उत्तर

11

जंगली अनुमान यहाँ ... शायद config में एक नई पंक्ति के रूप में जोड़ें:

AddOutputFilter DEFLATE php 

या अपने exising AddOutputFilterByType सूची के अंत में

application/x-httpd-php 

जोड़ें।

+0

सुझावों के लिए धन्यवाद लेकिन कोई खुशी नहीं :( – tomfumb

+0

क्या आप पुष्टि कर सकते हैं कि यह स्थिर सामग्री जैसे अन्य सामानों को सफलतापूर्वक संपीड़ित कर रहा है? –

+0

कि बहुत अच्छे प्रश्न ने मुझे एहसास दिलाया कि मैं बेवकूफ था - मैंने आपके द्वारा सुझाए गए परिवर्तन को करने से पहले फिडलर को सभी प्रतिक्रियाओं को स्वत: डीकोड करने के लिए सेट करें, इसलिए यह हमेशा असम्पीडित दिख रहा था। आपके उत्तर में परिवर्तन ने समस्या हल की। – tomfumb

संबंधित मुद्दे