file_get_contents के साथ फ़ाइल पुनर्प्राप्ति के बाद वास्तविक URL पुनर्प्राप्त करना
वेबसाइट सामग्री पुनर्प्राप्त करने के लिए file_get_contents() का उपयोग करते समय, यह संभव है कि प्रदान किया गया URL रीडायरेक्ट करता है एक अलग स्थान पर. हालांकि यह सुविधा सुविधाजनक हो सकती है, यह पुनर्निर्देशन के बाद पहुंचे वास्तविक यूआरएल को निर्धारित करने की आवश्यकता भी पैदा कर सकती है।
इसे प्राप्त करने का एक तरीका रीडायरेक्ट को अनदेखा करने के लिए file_get_contents() को कॉन्फ़िगर करना है। यहां बताया गया है:
$context = stream_context_create(
array(
'http' => array(
'follow_location' => false
)
)
);
$html = file_get_contents('http://www.example.com/', false, $context);
स्ट्रीम संदर्भ में 'follow_location' को गलत पर सेट करके, file_get_contents() बिना सामग्री को पुनः प्राप्त करेगा स्वचालित रूप से पुनर्निर्देशन का पालन कर रहा है।
अनुरोध करने के बाद, अंतिम प्राप्त करने के लिए HTTP प्रतिक्रिया के दौरान लौटाए गए हेडर की जांच की जा सकती है यूआरएल:
var_dump($http_response_header);
यह HTTP हेडर युक्त एक सरणी प्रदर्शित करेगा, जिसमें 'स्थान' हेडर भी शामिल है जो किसी भी रीडायरेक्ट के बाद पहुंचे वास्तविक यूआरएल को इंगित करता है।
यह दृष्टिकोण स्टैक ओवरफ़्लो पर थ्रेड में दिए गए समाधान से प्रेरित है "मैं फ़ाइल_गेट_कंटेंट्स के साथ एक स्थानांतरित-हेडर को कैसे अनदेखा कर सकता हूं PHP?"
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3