PHP file_get_contents کے ساتھ پراکسی کے ذریعے HTTP URL حاصل کرنا
PHP کے HTTP اسٹریم ریپر کو فارورڈ پراکسی کے لیے ترتیب دیں، بشمول درخواست کی تشکیل اور اسٹریم سیاق کی حدود۔
PHP cURL کے بغیر عام HTTP درخواست کے لیے، HTTP اسٹریم ریپر کو پراکسی سیاق دیں:
$context = stream_context_create([
'http' => [
'proxy' => 'tcp://203.0.113.10:8080',
'request_fulluri' => true,
'timeout' => 10,
],
]);
$body = file_get_contents('http://example.com/', false, $context);دستاویزی اینڈ پوائنٹ کو اپنے HTTP پراکسی یا HTTP پراکسی فہرست سے کسی امیدوار سے بدلیں۔ HTTP سیاق انٹرفیس proxy کے لیے TCP پتہ توقع کرتا ہے۔ request_fulluri=true مکمل منزل URI کو درخواست کی سطر میں رکھتا ہے، جیسا کہ بہت سے فارورڈ پراکسیوں کو درکار ہوتا ہے۔ ٹائم آؤٹ اس ریپر کے قواعد کے تحت اسٹریم آپریشن کو محدود کرتا ہے۔
باڈی کی تجزیہ سے پہلے واپس شدہ قدر اور وارننگ چیک کریں؛ ناکام پڑھائی اور کامیاب خالی جواب کے لیے مختلف طریقہ کار درکار ہے۔ تشخیص کا آغاز اسی ایک HTTP منزل اور محدود درخواست سے کریں۔ HTTPS ٹنلنگ اور TLS رویہ شامل کرتا ہے جسے اصل ریپر/PHP ورژن کے لیے چیک کرنا ہوگا؛ یہ مثال ان صلاحیتوں کو ثابت نہیں کرتی۔
اس کال میں سیاق دینا راستے کو نظر آتا رکھتا ہے اور غیر متعلقہ URL پڑھائیوں کو بدلنے سے بچاتا ہے۔ مشترکہ طے شدہ سیاق صرف اسی وقت موزوں ہے جب ایپلیکیشن جان بوجھ کر یہ پالیسی چاہے؛ لائبریریوں کو اس کے وسیع دائرہ کار کا خیال رکھنا چاہیے۔
یہ PHP اسٹریمز ترتیب دیتا ہے، خود مختار بنایا گیا cURL ہینڈل نہیں، نہ براؤزر اور نہ کوئی اور عمل۔ کسی پیکیج کی اصل HTTP نقل و حمل کی شناخت کریں اس سے پہلے کہ یہ توقع کریں کہ وہ یہ سیاق استعمال کرے گا۔