Please Help -- need insight with HTTPS

Help
2002-10-17
2002-10-18
  • Carl Shelbourne

    Carl Shelbourne - 2002-10-17

    Hi

    I'm trying to connect, anywhere using https.

    I am receiveing no headers back from my request. Standard HTTP requests work.

    The response code is blank.

    Using one of the examples:

        include "Snoopy.class.inc";
        $snoopy = new Snoopy;

        $host = "https://www.thawte.com";
        echo "Attempting $host<br>";
        if($snoopy->fetch($host))
        {
            echo "response code: ".$snoopy->response_code."<br>\n";
            while(list($key,$val) = each($snoopy->headers))
                echo $key.": ".$val."<br>\n";
            echo "<p>\n";
           
            echo "<PRE>".htmlspecialchars($snoopy->results)."</PRE>\n";
        }
        else
            echo "error fetching document: ".$snoopy->error."\n";

    ======================
    Do I have to set up some certificates or something on the server?

    I have cURL set up. Running with Snoopy 1.0;libcurl 7.9.2;PHP Version 4.2.2;Apache 1.3.22;OpenSSL 0.9.6b

    Cheers

     
    • Carl Shelbourne

      Carl Shelbourne - 2002-10-18

      Ok, sorted this out and I found 2 different problems
      (see next post for point 2)
      1. On my test machine
      The test machine has a proxy sitting between it and the www. It seems cUrl, and therefore Snoopy has no way of specifying the proxy for https on the command line...

      There are a number of ways around this.
      Use PHP and place a putenv line at or about line 929, (snoopy1.0) just above the exec in the _httpsrequest method

      eg.
      putenv( "HTTPS_PROXY=proxy:8080");

      OR

      Replace the exec with dynamically writting a shell script (see notes on http://www.php.net/putenv )

      OR

      set up this env ver before running Apache.

      *BEWARE* some ISPs (including mine), run PHP in safe mode, and therefore do not allow putenv on anything other than PHP_ env vars.

      If the ISP does not allow writting env vars then its unlikely you'll be allowed to dynamically write shell scripts but...

      The only real solution would be for cUrl to provide a commandline option for https, unless it already does, and I didn't find it. It does have one for http, but this did not seem to work.

       
    • Carl Shelbourne

      Carl Shelbourne - 2002-10-18

      Case 2: On My Host
      I had a different problem on my host

      First, cURL, although installed as part of the PHP installation was not available as a binary. They provided this for me.

      Second, although to me it was installed at /usr/bin, because I was a virtaul host it was in ta completely different directory.

      I have 3 tips:
      Check you have the cUrl binary
      Check the directory you claim cUrl is installed in
      Get a great host, whose support is invaluable when problems like this occur. Mine is www.ipxsystems.net

       

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks