Apabila cuba mendapatkan data daripada URL menggunakan fungsi file_get_contents() PHP, anda mungkin menghadapi ralat "gagal membuka aliran: Permintaan HTTP gagal!" Isu ini timbul apabila PHP menghadapi kesukaran melaksanakan permintaan HTTP ke URL yang ditentukan.
Salah satu punca yang berpotensi ialah kehadiran berbilang awalan "http://" dalam URL yang anda cuba akses. Pertimbangkan untuk mengalih keluar awalan berlebihan untuk melihat sama ada ia selesai isu itu.
Walau bagaimanapun, jika isu itu berterusan walaupun menggunakan URL yang sah, adalah dinasihatkan untuk mencuba penyelesaian alternatif yang telah terbukti berkesan sedang menggunakan perpustakaan cURL.
Berikut ialah coretan kod contoh menggunakan cURL:
<?php $curl_handle = curl_init(); curl_setopt($curl_handle, CURLOPT_URL, 'http://###.##.##.##/mp/get?mpsrc=http://mybucket.s3.amazonaws.com/11111.mpg&mpaction=convert format=flv'); curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT, 2); curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl_handle, CURLOPT_USERAGENT, 'Your application name'); $query = curl_exec($curl_handle); curl_close($curl_handle); ?>
Dengan menggunakan cURL, anda boleh mengendalikan permintaan HTTP dengan lebih andal, selalunya menyelesaikan masalah permintaan gagal yang dialami dengan fail_dapatkan_kandungan().
Atas ialah kandungan terperinci Mengapa file_get_contents() Gagal dengan 'permintaan HTTP gagal!' dan Bagaimana Saya Boleh Membetulkannya Menggunakan cURL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!