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
https://forums.phpfreaks.com/topic/15426-connecting-through-a-proxy/
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]

Archived

This topic is now archived and is closed to further replies.

×
×
  • 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.