2011-12-28 19 views
10

मैं कमांड लाइन कर्ल नीचे का उपयोग कर रहा जानने के लिए अपनी साइट को संपीड़ित और कैशिंग समर्थन करता है तोकर्ल आदेश वापसी http/1.1 406 स्वीकार्य नहीं त्रुटि

curl --head --compress http://www.mysite.com

यह निम्न परिणाम देता है

Http://1.1 406 Not Acceptable 
Date: Wed, 28 Dec 2011 07:41:32 GMT 
Server: Apache 
Content-Type: text/html; charset-iso-8859-1 

समस्या के बारे में आप क्या सोचते हैं? धन्यवाद

+0

तुम क्यों curl' उपयोग कर रहे हैं 'अगर जाँच करने के लिए अपने वेबसाइट संपीड़न और कैशिंग का समर्थन करता है। वे अपाचे द्वारा भेजे गए दोनों हेडर हैं। – nand

+0

यह संपीड़न का समर्थन नहीं करता है। व्यवस्थापक सर्वर का दावा है कि यह करता है और मुझे उसे साबित करना होगा –

+0

क्यों php.ini की जांच न करें? इसके लिए उपलब्ध फ़ंक्शंस उपलब्ध हैं, जैसे 'ini_get'। – nand

उत्तर

1

HTTP/1.1 मानक से:

संसाधन अनुरोध से पहचान जो स्वीकार्य अनुरोध में भेजा स्वीकार हेडर के अनुसार नहीं सामग्री विशेषताएं हैं प्रतिक्रिया संस्थाओं पैदा करने में ही सक्षम है।

जब तक यह एक HEAD अनुरोध नहीं था, प्रतिक्रिया में एक इकाई शामिल होनी चाहिए जिसमें उपलब्ध इकाई विशेषताओं और स्थान (0) की एक सूची शामिल है, जिससे उपयोगकर्ता या उपयोगकर्ता एजेंट सबसे उपयुक्त चुन सकता है।

तो हेड ड्रॉप करें और क्या गलत है देखें।

406 बस आपको सही साबित कर रहा है - सर्वर संपीड़न का समर्थन नहीं करता है। इसी तरह libcurl C-API का उपयोग कर

curl -A "Mozilla/4.0" 

: :)

+0

जब मैं '--head' यह मुझे पता चलता निम्नलिखित लाइनों ' 406 नहीं स्वीकार्य

स्वीकार्य नहीं

छोड़ देते हैं। । ' मैं शीर्षक में एचटीएफ -8 अक्षरों का उपयोग कर रहा हूं और एच 1 टैग भी –

+0

मैंने सोचा कि यह और अधिक दिखाएगा। वैसे भी, 406 मूल रूप से मतलब है "आपने कुछ ऐसा पूछा जो मैं आपको नहीं दे सकता"। 'curl --compress'' स्वीकृति-एन्कोडिंग भेजता है: डिफ्लेट, gzip' - स्पष्ट रूप से आपका सर्वर उस पर सेवा नहीं कर सकता है। संक्षेप में: यह प्रतिक्रिया साबित करती है कि आपका sysadmin गलत है, सर्वर संपीड़न का समर्थन नहीं करता है। आप अनुरोध-शीर्षलेखों को शामिल करते हुए अधिक वर्बोज़ आउटपुट के लिए कर्ल के-फ्लैग का उपयोग कर सकते हैं। यह आपके sysadmin को मनाने में मदद कर सकता है। –

+0

जब मैं अपनी साइट के लिए phpinfo() का उपयोग करता हूं, तो यह मुझे यह परिवर्तनीय वातावरण दिखाता है 'HTTP_ACCEPT_ENCODING gzip, delate' –

26

कुछ मामले मैं था, एजेंट faking इस समस्या का समाधान, का उपयोग करके

curl_easy_setopt(curl, CURLOPT_USERAGENT, "Mozilla/4.0"); 
+0

मुझे पूर्ण एजेंट स्ट्रिंग "मोज़िला/5.0 (विंडोज एनटी 6.1) ऐप्पल वेबबिट/537.36 (केएचटीएम, जैसे गीको) का उपयोग करना पड़ा क्रोम/41.0.2228.0 सफारी/537.36 "," मोज़िला/5.0 "काम नहीं किया। धन्यवाद! –

+1

फिकिंग एजेंट ने मेरे लिए बिल्कुल प्रदान किया है। धन्यवाद! – Animal451

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