地址:http-pro.abuyun.com,端口:9010
HTTP隧道拥有两种授权模式:
通过用户名/密码的形式进行身份认证,该认证信息最终会转换为『Proxy-Authorization』协议头跟随请求一起发出。
为便于部分语言进行接入,平台亦支持通过『Authorization』协议头进行隧道身份验证。
只须绑定用户发起请求的服务器IP即可。
一条代理隧道只能绑定一个IP,同一IP可以分别绑定到专业版、动态版、经典版代理隧道各一条。
// 要访问的目标页面
$targetUrl = "http://test.abuyun.com";
//$targetUrl = "http://proxy.abuyun.com/switch-ip";
//$targetUrl = "http://proxy.abuyun.com/current-ip";
// 代理服务器
$proxyServer = "http://http-pro.abuyun.com:9010";
// 隧道身份信息
$proxyUser = "H01234567890123P";
$proxyPass = "0123456789012345";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $targetUrl);
curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
// 设置代理服务器
curl_setopt($ch, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);
curl_setopt($ch, CURLOPT_PROXY, $proxyServer);
// 设置隧道验证信息
curl_setopt($ch, CURLOPT_PROXYAUTH, CURLAUTH_BASIC);
curl_setopt($ch, CURLOPT_PROXYUSERPWD, "{$proxyUser}:{$proxyPass}");
curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727;)");
//curl_setopt($ch, CURLOPT_HTTPHEADER, [
// "Proxy-Switch-Ip: yes",
//]);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 3);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$result = curl_exec($ch);
//$info = curl_getinfo($ch);
curl_close($ch);
var_dump($result);
// 要访问的目标页面
$targetUrl = "http://test.abuyun.com";
//$targetUrl = "http://proxy.abuyun.com/switch-ip";
//$targetUrl = "http://proxy.abuyun.com/current-ip";
// 代理服务器
$proxyServer = "http-pro.abuyun.com:9010";
// 隧道身份信息
$proxyUser = "H01234567890123P";
$proxyPass = "0123456789012345";
$proxyAuth = base64_encode("{$proxyUser}:{$proxyPass}");
$headers = implode("\r\n", [
"Proxy-Authorization: Basic {$proxyAuth}",
"Proxy-Switch-Ip: yes",
]);
$options = [
"http" => [
"proxy" => $proxyServer,
"header" => $headers,
"method" => "GET",
],
];
$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);
var_dump($result);