Jump to content

Connecting through a proxy


paultfh

Recommended Posts

What I am trying to do is connect to my newshost (unlimited.newshosting.com(63.218.45.254 port is 119)) to download usenet headers for my site.After sending a whitelist request to Godaddy, they replied with this:

[quote]Thank you for your email. Applications that need to make https connections (port 443) will need to be made "proxy aware". This will require additional coding to varying degrees, depending on the application. You will need to know the ip address and port of the proxy server in order to correctly modify your code. The ip of the proxy server is 64.202.165.130 and connections will be made on port 3128.

You will need to use this when coding with PHP:
curl_setopt ($ch, CURLOPT_HTTPPROXYTUNNEL, TRUE);
curl_setopt ($ch, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);
curl_setopt ($ch, CURLOPT_PROXY, http://64.202.165.130:3128);
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, FALSE);[/quote]

I'm not sure how I go about this.
Link to comment
Share on other sites

The code:

My code:
[quote] function connect() {

//connect to server
echo "Connecting to {$this->server}\n";
$this->nntp = new Net_NNTP;
$ret = $this->nntp->connect($this->server,$this->port,$this->account,$this->password);
if(PEAR::isError($ret)) {
echo "Cannot connect to server\n";
exit;
}

}
[/quote]

Connect code:
[quote]    /**
    * Connect to the specified port. If called when the socket is
    * already connected, it disconnects and connects again.
    *
    * @param $addr string IP address or host name
    * @param $port int TCP port number
    * @param $persistent bool (optional) whether the connection is
    *        persistent (kept open between requests by the web server)
    * @param $timeout int (optional) how long to wait for data
    * @access public
    * @return mixed true on success or error object
    */
    function connect($addr, $port, $persistent = null, $timeout = null) {
        if (is_resource($this->fp)) {
            @fclose($this->fp);
            $this->fp = null;
        }
       
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $addr.':'.$port);
        curl_setopt ($ch, CURLOPT_HTTPPROXYTUNNEL, TRUE);
curl_setopt ($ch, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);
curl_setopt ($ch, CURLOPT_PROXY, "http://64.202.165.130:3128");
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, FALSE);

        if (strspn($addr, '.0123456789') == strlen($addr)) {
            $this->addr = $addr;
        } else {
            $this->addr = gethostbyname($addr);
        }
        $this->port = $port % 65536;
        if ($persistent !== null) {
            $this->persistent = $persistent;
        }
        if ($timeout !== null) {
            $this->timeout = $timeout;
        }
        $openfunc = $this->persistent ? 'pfsockopen' : 'fsockopen';
        $errno = 0;
        $errstr = '';
        if ($this->timeout) {
            $fp = $openfunc($this->addr, $this->port, $errno, $errstr, $this->timeout);
        } else {
            $fp = $openfunc($this->addr, $this->port, $errno, $errstr);
        }
       
        if (!$fp) {
            return $this->raiseError($errstr, $errno);
        }

        $this->fp = $fp;
       
        return $this->setBlocking($this->blocking);
    }
[/quote]
Link to comment
Share on other sites

This thread is more than a year old. Please don't revive it unless you have something important to add.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.