CURL works (remote and local) file_get_contents() doesn't work (remote or local).
On 2009-12-13, at 4:39 PM, Gaurav Kumar wrote: > Ok Agreed. > > Lets do one last chance to ensure that your system is allowing external > connections or connection to other systems in the network- > > Use Curl to get in the file contents. Check your PHP that Curl is enabled. > Through phpinfo(); > > If the script output the google page then this means that there is nothing > that is stopping you form getting in the content externally. > > <?php > // $str = file_get_contents ('http://www.google.com'); > // echo $str; > > > // create a new cURL resource > $ch = curl_init(); > > // set URL and other appropriate options > curl_setopt($ch, CURLOPT_URL, "http://www.google.co.in"); > //http://www.google.com > curl_setopt($ch, CURLOPT_HEADER, 0); > > // grab URL and pass it to the browser > curl_exec($ch); > > // close cURL resource, and free up system resources > curl_close($ch); > > ?> > > Thanks, > > Gaurav Kumar > > > > 2009/12/13 René Fournier <m...@renefournier.com> > The thing is, the file_get_contents() fails the same way on local URLs -- > that is, web sites hosted on the same machine. Or even using the machine's > own IP address. > > On 2009-12-13, at 4:00 AM, Gaurav Kumar wrote: > >> Hi Rene, >> >> The only thing which is a hurdle is that your system/computer is not >> allowing external connections. There seems to be nothing else wrong. >> >> I strongly suggest check your system firewall, any central server settings >> through which your system gets internet access, any antivirus s/w installed >> etc.. this can be the only reason. Something is stopping you to access >> external connection. >> >> Let me know when your problem is fixed. >> Also I tried the below code and it works fine- >> >> <?php >> $str = file_get_contents ('http://www.google.com'); >> echo $str; >> ?> >> >> Thanks, >> >> Gaurav Kumar >> >> >> >> 2009/12/11 René Fournier <m...@renefournier.com> >> Hi Gaurav, >> >> On 2009-12-11, at 2:55 PM, Gaurav Kumar wrote: >> >>> A very typical problem. Good you sent the error message. >>> >>> This problem can be caused due to one of the following- >>> >>> 1. I have faced similar problem due to local firewall settings. >> >> Don't think this is it, since (1) the firewall settings haven't changed, and >> (2) other machines on the same network can execute this same code and >> function (but they aren't running OS X Server 10.6. >> >>> 2. Try some other domain; i.e. other than google com. Try some of the local >>> area website with a particular page like www.somedomain.com/somefile.html >> >> I've tried many different external and local web sites, and they all fail. >> >>> 3. Some times the remote host does not allow you to connect to get the file >>> contents. >> >> (Also not the cause -- as explained above.) >> >> >>> 4. # 3 can be either way round from both the ends a) you host server does >>> not allow external connections b) Remote host does not allow anonymous >>> connection. >> >> Thanks for the options. I don't think they apply in this case. If you have >> any other suggestions on what to do, I would welcome them. >> >> >> >>> Gaurav Kumar >>> blog.oswebstudio.com >>> >>> >>> >>> On Thu, Dec 10, 2009 at 9:01 PM, René Fournier <m...@renefournier.com> >>> wrote: >>> I thought error_reporting would display them, but I guess php.ini had them >>> suppressed. Anyway, with: >>> >>> <?php >>> >>> error_reporting(-1); >>> ini_set('display_errors', 1); >>> set_time_limit(0); >>> var_dump (file_get_contents ('http://www.google.com')); >>> >>> ?> >>> >>> I get: >>> >>> Warning: file_get_contents(http://www.google.com): failed to open stream: >>> Operation now in progress in /____/____.php on line 7 bool(false) >>> >>> Does that help with the diagnosis? >>> >>> >>> On 2009-12-10, at 12:28 AM, Richard Quadling wrote: >>> >>> > 2009/12/9 René Fournier <m...@renefournier.com>: >>> >> It is, and I use curl elsewhere in the same script to fetch remote >>> >> content. >>> >> This exact same function works fine on my MacBook Pro (10.6 client, PHP >>> >> 5.3), and *was* previously working fine under Server 10.4.11 and PHP 5.3, >>> >> >>> >> On 2009-12-09, at 11:10 PM, laruence wrote: >>> >> >>> >>> try >>> >>> wget http://www.google.com in your command line to see whether the >>> >>> network is reachable >>> >>> >>> >>> LinuxManMikeC wrote: >>> >>>> >>> >>>> On Wed, Dec 9, 2009 at 8:02 AM, LinuxManMikeC >>> >>>> <linuxmanmi...@gmail.com> wrote: >>> >>>> >>> >>>>> On Wed, Dec 9, 2009 at 6:45 AM, René Fournier <m...@renefournier.com> >>> >>>>> wrote: >>> >>>>> >>> >>>>>> Strange problem I'm having on Mac OS X Server 10.6 running PHP 5.3. >>> >>>>>> Any call of file_get_contents() on a local file works fine -- the >>> >>>>>> file is read and returned. But any call of file_get_contents on a >>> >>>>>> url -- any url, local or remote -- always returns false. >>> >>>>>> >>> >>>>>> var_dump (file_get_contents ('http://www.google.com/')); >>> >>>>>> >>> >>>>>> bool(false) >>> >>>>>> >>> >>>>>> I've checked php.ini, and the obvious seems okay: >>> >>>>>> >>> >>>>>> allow_url_fopen => On => On >>> >>>>>> >>> >>>>>> Any ideas? >>> >>>>>> >>> >>>>>> ...Rene >>> >>>>>> >>> >>>>> http://us2.php.net/manual/en/filesystem.configuration.php#ini.allow-url-fopen >>> >>>>> >>> >>>>> >>> >>>> >>> >>>> "I've checked php.ini" >>> >>>> Right, must remember not to reply to stuff till I'm awake. :-D >>> >>>> >>> >>>> -- >>> >>>> PHP General Mailing List (http://www.php.net/) >>> >>>> To unsubscribe, visit: http://www.php.net/unsub.php >>> >>>> >>> >>>> >>> >>> >>> >>> -- >>> >>> <2866791487_dbbbdddf9e.jpg>惠 新宸 xinchen.hui | 商务搜索部 | >>> >>> (+8610)82602112-7974 | <2866349865_203e53a6c6.jpg>:laruence >>> >> >>> >> >>> > >>> > Do you have ANY errors/warning/notices? >>> > >>> > >>> > >>> > -- >>> > ----- >>> > Richard Quadling >>> > "Standing on the shoulders of some very clever giants!" >>> > EE : http://www.experts-exchange.com/M_248814.html >>> > Zend Certified Engineer : http://zend.com/zce.php?c=ZEND002498&r=213474731 >>> > ZOPA : http://uk.zopa.com/member/RQuadling >>> >>> >> >> > >