PHP file_get_contents bilan proksi orqali HTTP URL olish
PHP’ning HTTP oqim o‘ramini yo‘naltiruvchi proksi uchun sozlang, so‘rov formatlashuvi va oqim kontekstlari chegaralarini o‘z ichiga oladi.
PHP cURL’siz oddiy HTTP so‘rovi uchun HTTP oqim o‘ramiga proksi kontekstini bering:
$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);Hujjat manzilini HTTP proksingiz yoki HTTP proksi ro‘yxatidagi nomzod bilan almashtiring. HTTP kontekst interfeysi proxy uchun TCP manzilini kutadi. request_fulluri=true to‘liq manzil URI’sini so‘rov satriga qo‘yadi, ko‘p yo‘naltiruvchi proksilar shuni talab qiladi. Taym-aut oqim amalini o‘sha o‘ram qoidalari bo‘yicha cheklaydi.
Mazmunni tahlil qilishdan oldin qaytarilgan qiymat va ogohlantirishni tekshiring; muvaffaqiyatsiz o‘qish va bo‘sh muvaffaqiyatli javob boshqacha ishlov talab qiladi. Diagnostikani shu bitta HTTP manzili va cheklangan so‘rov bilan boshlang. HTTPS tunnel va TLS xatti-harakatini qo‘shadi, ular haqiqiy o‘ram/PHP versiyasi uchun tekshirilishi kerak; bu misol o‘sha imkoniyatlarni tasdiqlamaydi.
Kontekstni shu chaqiruvda berish marshrutni ko‘rinadigan qilib turadi va bog‘liq bo‘lmagan URL o‘qishlarini o‘zgartirishdan saqlaydi. Umumiy standart kontekst faqat ilova bu siyosatni ataylab xohlasa mos keladi; kutubxonalar uning kengroq qamrovini hisobga olishi kerak.
Bu PHP oqimlarini sozlaydi, mustaqil yaratilgan cURL tutqichini emas, brauzer yoki boshqa jarayonni emas. Paketning ushbu kontekstdan foydalanishini kutishdan oldin uning haqiqiy HTTP transportini aniqlang.