426 Upgrade Required का मतलब है कि सर्वर मौजूदा प्रोटोकॉल से रिक्वेस्ट पूरी करने से मना करता है, लेकिन क्लाइंट के किसी दूसरे प्रोटोकॉल पर अपग्रेड करने के बाद ऐसा कर सकता है। सर्वर को एक Upgrade हेडर भेजना ज़रूरी है, जिसमें ज़रूरी प्रोटोकॉल (एक या ज़्यादा) का नाम हो।
सबसे आम मामला है किसी WebSocket एंडपॉइंट पर सामान्य HTTP रिक्वेस्ट आना: कई WebSocket सर्वर यह बताने के लिए 426 लौटाते हैं कि क्लाइंट को WebSocket हैंडशेक भेजना चाहिए। 426 का इस्तेमाल TLS (RFC 2817) या नए HTTP वर्शन को ज़रूरी बनाने के लिए भी हुआ है, लेकिन HTTPS के लिए आम तरीका रीडायरेक्ट ही है।
उदाहरण रिस्पॉन्स
HTTP/1.1 426 Upgrade Required
Date: Fri, 06 Nov 2026 10:15:32 GMT
Upgrade: websocket
Connection: Upgrade
Content-Type: text/plain
Content-Length: 49
This endpoint only accepts WebSocket connections. SEO और रीडायरेक्ट जांच
426 लौटाने वाला URL इंडेक्स नहीं हो सकता, लेकिन ऐसे URL आम तौर पर WebSocket या API एंडपॉइंट होते हैं, जिन्हें वैसे भी क्रॉल नहीं होना चाहिए। अगर रीडायरेक्ट जांच में किसी सामान्य पेज के लिए 426 दिखे, तो सर्वर या प्रॉक्सी उस URL को WebSocket बैकएंड पर भेज रहा है।
आम वजहें और इस्तेमाल
- किसी WebSocket एंडपॉइंट पर सादा HTTP
GETभेजा गया। - सर्वर के आगे लगा प्रॉक्सी
Upgradeहेडर आगे नहीं भेजता, इसलिए बैकएंड को सामान्य रिक्वेस्ट दिखती है। - सर्वर को ऐसा प्रोटोकॉल वर्शन चाहिए, जो क्लाइंट ने इस्तेमाल नहीं किया।