2010-12-13 136 views
1

我在同一臺服務器上有兩個項目。我想在我的網站上使用一些數據表格,所以我使用了file_get_contents;大多數時候我得到500內部錯誤500服務器錯誤file_get_contents

我檢查了我的網址fopen使用phpinfo()

+0

請提供更多的標籤,如PHP等或更詳細地描述您的問題,以便了解您使用的語言,使用的服務器,您想要做什麼等。 – 2010-12-13 09:47:24

+0

可能的重複[爲什麼我在使用文件時收到500錯誤\ _get \ _contents(),但在瀏覽器?](http://stackoverflow.com/questions/10524748/why-im-getting-500-error-when-using-file -get-contents-but-works-in-a-browser) – kenorb 2015-03-16 17:44:48

回答

4

使用默認設置,file_get_content()不能在代理之後工作,或者它不能處理超時。通常建議閱讀本地文件。因此請使用cURL

以下函數可用於作業:

function http_request($uri, $time_out = 10, $headers = 0) 
{ 
    // Initializing 
    $ch = curl_init(); 

    // Set URI 
    curl_setopt($ch, CURLOPT_URL, trim($uri)); 

    curl_setopt($ch, CURLOPT_HEADER, $headers); 

    // 1 - if output is not needed on the browser 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 

    // Time-out in seconds 
    curl_setopt($ch, CURLOPT_TIMEOUT, $time_out); 

    // Executing 
    $result = curl_exec($ch); 

    // Closing the channel 
    curl_close($ch); 

    return $result; 
} 

讓我知道是否your're使用Linux或Windows給你cURL安裝提示

+0

我已經在服務器上安裝cURL,但我有一個問題,如何使用上面的函數獲取數據適當的一些div或一些值。 – user441423 2010-12-13 10:40:26

+0

必須使用PHP腳本完成。例如,在你的PHP腳本中,你可能有...

.... – 2010-12-13 10:53:07

+0

'file_get_contents()'確實*可以*通過指定上下文來處理超時,但是我發現它不喜歡當服務器返回錯誤500 ',所以打破可靠的舊捲曲是答案 – 2012-11-28 11:27:15