307 Temporary Redirect का मतलब है कि टारगेट रिसोर्स अस्थायी रूप से Location हेडर में दिए गए URL पर है, और रीडायरेक्ट फ़ॉलो करते समय क्लाइंट को रिक्वेस्ट मेथड बदलने की अनुमति नहीं है। POST उसी बॉडी के साथ POST ही रहता है, और PUT भी PUT ही रहता है। आगे की रिक्वेस्ट फिर भी मूल URL पर जानी चाहिए। 307 डिफ़ॉल्ट रूप से कैश करने योग्य नहीं है।
HTTP/1.1 में 307 इसलिए जोड़ा गया, ताकि 302 Found की अस्पष्टता दूर हो, जिसे ब्राउज़र POST के बाद GET से फ़ॉलो करते हैं। API एंडपॉइंट, अपलोड और फ़ॉर्म पोस्ट के अस्थायी रीडायरेक्ट के लिए, या जहां भी मेथड वैसा ही रहना ज़रूरी हो, इसका इस्तेमाल करें।
HSTS इस्तेमाल करने वाली किसी साइट का http:// पता टाइप करने के बाद ब्राउज़र के डेवलपर टूल में आपको 307 Internal Redirect दिख सकता है। यह रीडायरेक्ट ब्राउज़र खुद अपनी HSTS लिस्ट से बनाता है और यह कभी सर्वर तक पहुंचा ही नहीं; हो सकता है कि सर्वर का अपना रीडायरेक्ट 301 हो। सर्वर असल में क्या भेजता है, यह TrueURL के HTTPS रीडायरेक्ट चेकर जैसी सर्वर-साइड जांच से पता चलता है।
उदाहरण रिस्पॉन्स
HTTP/1.1 307 Temporary Redirect
Date: Fri, 06 Nov 2026 10:15:32 GMT
Location: https://eu.api.example.com/v1/upload
Cache-Control: no-store
Content-Length: 0 SEO और रीडायरेक्ट जांच
Google 307 को 302 की तरह मानता है: अस्थायी रीडायरेक्ट और कमज़ोर कैननिकल सिग्नल, इसलिए मूल URL आम तौर पर इंडेक्स में बना रहता है। अस्थायी स्थितियों के लिए यह सही है; स्थायी बदलाव के लिए 308 या 301 इस्तेमाल करें। कुछ फ़्रेमवर्क डिफ़ॉल्ट रूप से 307 बनाते हैं। उदाहरण के लिए, Next.js permanent: false वाले रीडायरेक्ट के लिए 307 और permanent: true के लिए 308 इस्तेमाल करता है, इसलिए जांचें कि आपका कॉन्फ़िगरेशन कौन-सा कोड बनाता है।
आम वजहें और इस्तेमाल
- कोई API या अपलोड एंडपॉइंट अस्थायी रूप से कहीं और गया है, और
POSTबॉडी को रीडायरेक्ट के बाद भी बने रहना है। - मेंटेनेंस, लोड बैलेंसिंग या रीजनल रूटिंग कुछ समय के लिए रिक्वेस्ट को कहीं और भेजती है।
- किसी फ़्रेमवर्क का डिफ़ॉल्ट अस्थायी रीडायरेक्ट, जैसे
permanent: falseवाला Next.js, या Starlette और FastAPI मेंRedirectResponse। - ब्राउज़र डेवलपर टूल में HSTS वाला “307 Internal Redirect”, जो सर्वर से नहीं, ब्राउज़र से आता है।