2013-01-19 116 views
0

我有一個奇怪的問題,我正面臨着PHP CURL。PHP CURL錯誤7無法連接到主機

我想通過運行在centos工作站上的php腳本調用在同一網絡中的Windows機器上運行的Web服務。我正在使用CURL。問題是我可以通過瀏覽器訪問URL,並且完美地工作。 BUt當我嘗試使用PHP腳本它給出了一個錯誤代碼7。

HOwever如果我嘗試本地IP地址和谷歌在PHP腳本它沒有問題的作品。可能是什麼問題?在過去的幾個小時裏,我一直試圖讓我解決這個問題,但我無法對其進行分類。

我還想補充一點,當我通過終端使用crl時,我得到了正確的答覆。 HTTP 200 OK

幫助需要的:)

$curl = curl_init(); 
curl_setopt_array($curl, array( 
    CURLOPT_RETURNTRANSFER => 1, 
    CURLOPT_HEADER => 1, 
    CURLOPT_TIMEOUT => 4, 
    CURLOPT_USERAGENT=>'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US;rv:1.8.1.13) Gecko/20080311 Firefox/2.0.0.13', 
    CURLOPT_VERBOSE => 1, 
    CURLOPT_PORT => 9710,   
    CURLOPT_URL => 'http://192.168.100.4:9710/http/send-message?message='.$message 
)); 

// Send the request & save response to $resp 
$resp = curl_exec($curl); 
echo "<br>Error Code : " .curl_errno($curl); 
+0

請將您的php代碼添加到問題中。 –

+0

我已添加代碼。 – BinCode

+0

當然,您可以在CentOS機器的瀏覽器中嘗試,而不是Windows? –

回答

0

,如果你嘗試,會發生什麼:

$curl = curl_init(); 
curl_setopt_array($curl, array( 
    CURLOPT_RETURNTRANSFER => 1, 
    CURLOPT_HEADER => 1, 
    CURLOPT_VERBOSE => 1,   
    CURLOPT_URL => 'http://192.168.100.4:9710/http/send-message?message='.$message 
)); 

if(curl_exec($curl) === false) { 
    echo 'Curl error: ' . curl_error($ch); 
} else { 
    echo 'Success!'; 
} 

有一件事我注意到的是,您試圖訪問端口的兩倍。

+0

我試過了,但它力不能解決。我嘗試了所有不同的選項來使其工作,但無法弄清楚什麼是阻止或避免請求,我是否需要在標題或選項中查找任何內容? – BinCode

0

在Centos機器上啓用了selinux,導致了問題。謝謝你們的幫助。

相關問題