2012-06-12 66 views
1

我有两台服务器s1和s2。我有一个s1文件试图通过php curl从s2访问文件。 curl命令是使用php在s1/test.php中编写的,它正在请求s2/file.php。PHP CURL从特定服务器到另一个特定服务器不工作

我测试了如果curl存在于s1中,并且它与除s2以外的所有url都可以正常工作。我也可以从本地主机访问s2,但不能从s1访问。请帮帮我。

这里是我的卷曲代码:

$ch = curl_init(); 
      curl_setopt($ch, CURLOPT_URL, "here the url is placed"); 
      curl_setopt($ch, CURLOPT_POST, 1); 
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); 
      curl_setopt($ch, CURLOPT_TIMEOUT, 30); 
curl_setopt($ch, CURLOPT_POSTFIELDS, ''); 
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
      $data = curl_exec($ch); 
if(!$data) 
{ 
    echo 'Curl error: ' . curl_error($ch); 
} 
      curl_close($ch); 
      echo $data; 

当我执行我越来越:“卷曲的错误:无法连接到主机”

+1

您是否尝试过从命令行连接wget或curl甚至telnet?可能是某种类型的防火墙问题,不一定与PHP相关。 – Blizz

+0

DNS?防火墙??你可以telnet从s1到s2吗? – ManseUK

+0

@Blizz从本地卷曲URL工作正常 –

回答

0

couldn't connect to host意味着sonmething是错误的之间的连接2台服务器。检查DNS的,IP的防火墙,打开的端口和服务...

在CLI中运行wget从s1到s2说什么?

+0

如何在CLI中从s1到s2运行wget?我正在使用Windows 7机器。 –

+0

哈哈。请粘贴您正在使用的确切代码。我们需要查看服务器地址和端口。另外,服务器运行什么操作系统? – Quamis