400 Bad Request सामान्य (generic) क्लाइंट एरर है। सर्वर रिक्वेस्ट प्रोसेस करने से मना कर देता है, क्योंकि उसे इसमें कुछ गलत लगता है: गलत सिंटैक्स, अमान्य मैसेज फ़्रेमिंग, धोखा देने वाली रिक्वेस्ट रूटिंग, खराब Host हेडर, अमान्य क्वेरी पैरामीटर या ऐसी बॉडी जो पार्स नहीं होती। क्लाइंट को बिना बदलाव के वही रिक्वेस्ट दोबारा नहीं भेजनी चाहिए।
कई सर्वर 400 का इस्तेमाल उन समस्याओं के लिए भी करते हैं, जिनके अपने ज़्यादा सटीक कोड हैं। उदाहरण के लिए, जब हेडर उसके बफ़र से बड़े हो जाते हैं, तो nginx “400 Bad Request: Request Header Or Cookie Too Large” लौटाता है, जबकि 431 ज़्यादा सटीक होता; और कई API वैलिडेशन एरर के लिए 400 लौटाते हैं, जो 422 हो सकते थे।
असली वजह जानने के लिए आम तौर पर रिस्पॉन्स बॉडी देखना सबसे अच्छा है।
उदाहरण रिस्पॉन्स
HTTP/1.1 400 Bad Request
Date: Fri, 06 Nov 2026 10:15:32 GMT
Server: nginx
Content-Type: text/html
Content-Length: 217
Connection: close
<html>
<head><title>400 Request Header Or Cookie Too Large</title></head>
<body>
<center><h1>400 Bad Request</h1></center>
<center>Request Header Or Cookie Too Large</center>
<hr><center>nginx</center>
</body>
</html> SEO और रीडायरेक्ट जांच
सर्च इंजन 400 को दूसरे 4xx एरर की तरह मानते हैं: URL इंडेक्स नहीं होता, और जो इंडेक्स किया गया URL 400 लौटाने लगता है, वह इंडेक्स से हट जाता है। क्रॉलर बिना कुकी के छोटी, स्टैंडर्ड रिक्वेस्ट भेजते हैं, इसलिए जो 400 सिर्फ़ क्रॉलर को मिलता है, वह आम तौर पर URL में असामान्य कैरेक्टर या किसी फ़ायरवॉल नियम की वजह से होता है। रीडायरेक्ट जांच में चेन के बीच में 400 का मतलब अक्सर यह होता है कि किसी रीडायरेक्ट ने गलत URL बना दिया, जैसे डबल-एन्कोड किए गए कैरेक्टर या टूटी हुई क्वेरी स्ट्रिंग वाला।
आम वजहें और इस्तेमाल
- बहुत ज़्यादा या बहुत बड़ी कुकीज़। साइट की कुकीज़ साफ़ करें, या nginx में
large_client_header_buffersबढ़ाएं। - गलत बना URL, जैसे बिना एन्कोड की गई स्पेस, टूटी हुई परसेंट-एन्कोडिंग या अमान्य
Hostहेडर। - अमान्य JSON वाली या ज़रूरी पैरामीटर के बिना भेजी गई API रिक्वेस्ट।
- HTTPS पोर्ट पर भेजी गई सादी HTTP रिक्वेस्ट, जिसे nginx “The plain HTTP request was sent to HTTPS port” के रूप में दिखाता है।