मैं हेडरटेक्स्ट ट्रांसफर प्रोटोकॉल के हेड कमांड को हेडर पुनर्प्राप्त करने के लिए PHP में किसी सर्वर पर भेजना चाहता हूं, लेकिन सामग्री या यूआरएल नहीं। मैं इसे एक कुशल तरीके से कैसे कर सकता हूं?PHP में HTTP के HEAD कमांड का उपयोग करने का सबसे आसान तरीका क्या है?
शायद सबसे आम उपयोग-केस मृत वेब लिंक की जांच करना है। इसके लिए मुझे केवल HTTP अनुरोध के उत्तर कोड की आवश्यकता है, न कि पृष्ठ सामग्री। PHP में वेब पेज प्राप्त करना आसानी से file_get_contents("http://...")
का उपयोग करके किया जा सकता है, लेकिन लिंक की जांच के उद्देश्य से, यह वास्तव में अक्षम है क्योंकि यह पूरे पृष्ठ की सामग्री/छवि/जो कुछ भी डाउनलोड करता है।
मैं इस समाधान को कर्ल का उपयोग करके पसंद करता हूं, क्योंकि मुझे अंतर्निहित कार्यों का उपयोग करना पसंद है। शायद कोई और हर संभावना के प्रदर्शन पर टिप्पणी कर सकता है? – fuenfundachtzig
ध्यान दें कि यह '401' प्रतिक्रिया कोड के लिए एक त्रुटि फेंक देगा, जबकि कर्ल आपको वास्तविक प्रतिक्रिया प्रदान करता है। –
'stream_context_create()' का उपयोग 'file_get_contents()' के साथ भी किया जा सकता है। हो सकता है कि 'get_headers() '
HEAD
के अनुरोध के तरीके पर' stream_context_set_default() 'के साथ बहुत बेहतर है। Http://php.net/manual/es/function.get-headers.php – cybmeta