首頁 > 後端開發 > php教程 > 為什麼 file_get_contents() 失敗以及 cURL 如何修復「HTTP 請求失敗」錯誤?

為什麼 file_get_contents() 失敗以及 cURL 如何修復「HTTP 請求失敗」錯誤?

Linda Hamilton
發布: 2024-12-10 07:41:13
原創
221 人瀏覽過

Why Does file_get_contents() Fail and How Can cURL Fix

解決PHP file_get_contents() “HTTP 請求失敗”錯誤

嘗試使用file_get_contents() 從指定URL 檢索內容時,使用者可能會遇到錯誤:「警告:file-get-contents() 無法開啟串流:HTTP 請求失敗! HTTP/1.1 202 已接受。

要解決此問題,另一種方法是使用 cURL 擴充。 cURL 可以更好地控制 HTTP 請求,並允許其他配置選項。以下是使用 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);

?>
登入後複製

在此修改後的版本中,我們利用 cURL 函數來啟動 HTTP 請求。我們定義一個curl句柄並設定各種選項:

  • CURLOPT_URL:指定目標URL。
  • CURLOPT_CONNECTTIMEOUT:設定逾時建立連線。
  • CURLOPT_RETURNTRANSFER: 指示輸出應以字串形式傳回。
  • CURLOPT_USERAGENT: 設定請求的自訂使用者代理程式。

透過利用 cURL,我們更好地控制 HTTP 請求,可以有效解決 file_get_contents() 遇到的「HTTP request failed」錯誤。

以上是為什麼 file_get_contents() 失敗以及 cURL 如何修復「HTTP 請求失敗」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板