2010-06-22 8 views

उत्तर

56

सिद्धांत में कोई सीमा नहीं है। HTTP URL को, HTTP 1.1 specification राज्यों के लिए:

HTTP प्रोटोकॉल यूआरआई की लंबाई पर किसी भी एक प्रायोरी सीमा जगह नहीं है। सर्वर सेवा के किसी भी संसाधन के यूआरआई को संभालने में सक्षम होना चाहिए, और अगर वे जीईटी-आधारित फॉर्म प्रदान करते हैं जो ऐसे यूआरआई उत्पन्न कर सकते हैं तो यूआरआई को बिना किसी लंबाई के यूआरआई को संभालने में सक्षम होना चाहिए। एक सर्वर सर्वर को संभाल सकता है (धारा 10.4.15 देखें) की तुलना में एक URI लंबा लंबा 414 (अनुरोध-यूआरआई बहुत लंबा) स्थिति लौटा सकता है (अनुभाग 10.4.15 देखें)।

लेकिन व्यवहार में, कई ग्राहक और सर्वर केवल एक निश्चित लंबाई तक यूआरएल का समर्थन करते हैं। rule of thumb is not to use URLs longer than 2000 characters (प्रतिशत एन्कोडिंग पहले ही ध्यान में रखी गई है)।

+0

क्या आप इस सीमा के प्रमुख (अक्सर उपयोग किए जाने वाले) घटकों की एक सूची जानते हैं? –

+0

@ थॉमस नहीं, दुर्भाग्य से नहीं। – Gumbo

-1

मैं कुछ है कि मानक यूआरएल (क्वेरी स्ट्रिंग सहित) के लिए 1024 बाइट्स को परिभाषित करता है याद लेकिन मैं यह भी कहीं पढ़ा QueryString/प्राप्त/URL पैरामीटर पर सीमा क्या है कि इंटरनेट एक्सप्लोरर 2083 वर्णों को स्वीकार करता है। शायद काफी ब्राउज़र निर्भर ...

5

कोई परिभाषित सीमा नहीं है। हालांकि, आरएफसी 2068 कहता है:

HTTP प्रोटोकॉल किसी यूआरआई की लंबाई पर कोई प्राथमिक सीमा नहीं रखता है। सर्वर अपने द्वारा प्रदान किए जाने वाले किसी भी संसाधन के यूआरआई को संभालने में सक्षम होना चाहिए, और यदि वे जीईटी-आधारित फॉर्म प्रदान करते हैं जो यूआरआई उत्पन्न कर सकते हैं तो यूबीआई को बिना किसी लंबाई के यूआरआई को संभालने में सक्षम होना चाहिए। यदि कोई यूआरआई सर्वर से अधिक लंबा हो, तो सर्वर को 414 (अनुरोध-यूआरआई बहुत लंबी) स्थिति वापस करनी चाहिए (अनुभाग 10.4.15 देखें)। नोट: 255 बाइट्स से ऊपर यूआरआई लंबाई के आधार पर सर्वर सावधान रहना चाहिए, क्योंकि कुछ पुराने ग्राहक या प्रॉक्सी कार्यान्वयन इन लंबाईों का सही ढंग से समर्थन नहीं कर सकते हैं।

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