PHP卷曲版本改变了程序无法正常工作

时间:2013-02-04 18:28:43

标签: php curl

我在使用EASY PHP的虚拟机中用PHP编写了一个应用程序(我知道我不应该使用Windows而是使用Linux :))。现在我已将程序移动到Linux真实服务器(实际上,这是我的synology diskstation)并且没有任何工作了。我做了一些调试,似乎我没有从curl函数中得到任何回复。

在我的Windows服务器中,curl版本是7.21,现在在synology上,版本是7.26-DEV。也许是因为我使用DEV版本?

以下是代码的一部分,我使用非常基本的卷曲,所以我不知道是否需要做一些事情来激活curl。当我在我的linux服务器上执行phpinfo时,我可以看到启用了卷曲支持。

编码:'

   $ch = curl_init();
   if ($debug == 1) 
   {
     curl_setopt($ch, CURLOPT_VERBOSE, 1);
   }
   curl_setopt($ch, CURLOPT_FRESH_CONNECT, true); 
   curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
   curl_setopt($ch, CURLOPT_POSTFIELDS, $xml_request);
   curl_setopt($ch, CURLOPT_COOKIESESSION, true); 
   curl_setopt($ch, CURLOPT_COOKIEJAR, './cookie/cookie.txt'); 
   curl_setopt($ch, CURLOPT_URL,$ihcip."ws/AuthenticationService");
   curl_setopt($ch, CURLOPT_TIMEOUT, $timeout); 
   curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); 

   if (preg_match('`^https://`i', $ihcip)) 
   { 
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0); 
   } 

   if ($debug == 1) {
      curl_setopt($ch, CURLOPT_HEADERFUNCTION, 'dbg_curl_data');
      curl_setopt($ch, CURLOPT_WRITEFUNCTION, 'dbg_curl_data');
      curl_setopt($ch, CURLINFO_HEADER_OUT, true);
   }

   $result = curl_exec($ch);
   if ($debug == 1) 
   {
      echo '<fieldset><legend>request headers</legend> <pre>', htmlspecialchars(curl_getinfo($ch, CURLINFO_HEADER_OUT)), '</pre> </fieldset>';
      echo '<fieldset><legend>xml request</legend> <pre>', htmlspecialchars($xml_request), '</pre> </fieldset>';
      echo '<fieldset><legend>response</legend> <pre>', htmlspecialchars(dbg_curl_data(null)), '</pre> </fieldset>';
   }

0 个答案:

没有答案