簡體   English   中英

cURL GET請求在localhost上有效,但在Web服務器上不可用

[英]cURL GET request working on localhost, but no on web server

我正在使用cURL從網站獲取數組。 它在localhost上可以完美運行,但是當我將其上傳到Server時它返回NULL。 這是我的代碼:

    $curl = curl_init();
$url = "http://staging.quran.com:3000/api/v3/chapters?language=en";
    curl_setopt_array($curl, array(
      CURLOPT_PORT => "3000",
      CURLOPT_URL => $url,
      CURLOPT_RETURNTRANSFER => true,
      CURLOPT_ENCODING => "",
      CURLOPT_MAXREDIRS => 10,
      CURLOPT_TIMEOUT => 0,
      CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
      CURLOPT_CUSTOMREQUEST => "GET",
      CURLOPT_POSTFIELDS => "{}",
      curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE)
    ));

    $response = curl_exec($curl);
    $err = curl_error($curl);

    curl_close($curl);

    if ($err) {
      echo "cURL Error #:" . $err;
    } else {
      echo $response;
    }

注意:此網址僅適用於該網址,不適用於所有其他網址,例如Google.com等

這意味着我的服務器的cURL請求已啟用!

任何人都可以幫助我!

嘗試使用var_dump($response)代替echo $response; ,如果我沒記錯的話, $response是一個json對象,而不是一個字符串。

轉到以下stackoverflow鏈接卷曲請求在實時服務器上不起作用

檢查您請求的服務器是否阻止了來自服務器的請求。 嘗試從服務器的外殼程序ping到該服務器( http://staging.quran.com:3000/api/v3/chapters?language=en

您的代碼沒有任何問題,此外,當訪問其他網站時,它可以在localhost和服務器上運行。

確保服務器允許 端口3000上的傳出連接

我很確定問題出在那兒。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM