php file with CURL commands not working on Server

♀尐吖头ヾ 提交于 2019-12-13 03:37:34

问题


I have php file which consist of curl code so as to access an api. But when I upload this file on server and try to execute it via url no output is shown. Also file symbol is not shown as it is shown for php file. Guide me how to solve this problem. The code in php file is :

 <?php   // set up the curl resource

    $ch = curl_init(); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));

    curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch,CURLOPT_POSTFIELDS,"{}"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_URL, 'http://184.73.165.170:3000/api/3ace632b194e4366b821f7775b51cc4e/get-ibeacon-contents'); // execute the request

    $output = curl_exec($ch);

    // output the profile information - includes the header

    //echo "curl response is :".($output). PHP_EOL; print($output);

    // close curl resource to free up system resources

    curl_close($ch); ?>

My server index shows as shown in image. As per my understanding a php file symbol is different than what it is shown in image I uploaded. Can anyone suggest about this ,if it helps me resolve my aim.


回答1:


I tried on local and the cURL seems to work. If its working on local only and not on server then these are the things you should check:

  • Enable cURL on server ;extension=php_curl.dll and remove the semicolon; (uncomments) usually inside file php/php.ini
  • If you are working locally on Windows and trying to upload to a Linux server, then you might want to change EOL for UNIX/OSX Format. You can do this using Notepad++ by going to Edit -> EOL Conversion -> UNIX/OSX Format and then upload.



回答2:


Try using your code this way

     <?php

        $json=json_encode(array('key1'=>'val1','key2'=>'val2'));

        $ch = curl_init(); 
        curl_setopt($ch, CURLOPT_URL, 'http://184.73.165.170:3000/api/3ace632b194e4366b821f7775b51cc4e/get-ibeacon-contents');
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
        curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
        curl_setopt($ch, CURLOPT_POST, true); 
        curl_setopt($ch,CURLOPT_POSTFIELDS,$json); 


        $output = curl_exec($ch);

        var_dump(curl_getinfo($ch));
        echo curl_errno($ch) . '-' . curl_error($ch);

        curl_close($ch); 

    ?>


来源:https://stackoverflow.com/questions/31645397/php-file-with-curl-commands-not-working-on-server

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!