Trying to diagnose an issue using PHP to cURL to an Internet location on a RedHat Linux server.
cURL is installed and working, and:
<?php var_dump(curl_version()); ?>
shows all the correct information in the output.  The issue is I can use PHP to cURL to localhost on the box itself, but not the Internet (see below).  
Normally I'd suspect the firewall, but I can cURL from the command line to the Internet without a problem.  The box can also update it's own software packages, etc.  
What am I missing?  My test is:
<?php 
    function http_head_curl($url,$timeout=30)
    {
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_TIMEOUT, $timeout);
        curl_setopt($ch, CURLOPT_HEADER, 1);
        curl_setopt($ch, CURLOPT_NOBODY, 1);
        curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        $res = curl_exec($ch);
        if ($res === false) {
            throw new RuntimeException("cURL exception: ".curl_errno($ch).": ".curl_error($ch));
        }
        return trim($res);
    }
    // Succeeds, displaying headers
    echo(http_head_curl('localhost'));
    // Fails:
    echo(http_head_curl('www.google.com'));
?>