本文分享一个,dns轮询环境下,获取远程网页内容的函数,有需要的朋友参考下。
同一个域名对应多个IP的情况,可以通过PHP和HTTP协议来实现获取远程网页的内容。
例如,在访问abc.php时,在header头中加上bbs.it-home.org域名。
例子:
- <!--?php
- /*
- * 函 数:同一域名对应多个IP时,获取指定服务器的远程网页内容
- * 参数说明:
- * $ip 服务器的IP地址
- * $host 服务器的host名称
- * $url 服务器的URL地址(不含域名)
- * 返回值:
- * 获取到的远程网页内容
- * false 访问远程网页失败
- */
- function HttpVisit($ip, $host, $url)
- {
- $errstr = '';
- $errno = '';
- $fp = fsockopen ($ip, 80, $errno, $errstr, 90);
- if (!$fp)
- {
- return false;
- }
- else
- {
- $out = "GET {$url} HTTP/1.1/r/n";
- $out .= "Host:{$host}/r/n";
- $out .= "Connection: close/r/n/r/n";
- fputs ($fp, $out);
- while($line = fread($fp, 4096)){
- $response .= $line;
- }
- fclose( $fp );
- //去掉Header头信息
- $pos = strpos($response, "/r/n/r/n");
- $response = substr($response, $pos + 4);
- return $response;
- }
- }
- //调用方法:
- $server_info1 = HttpVisit("59.112.33.213", "bbs.it-home.org", "/abc.php");
- $server_info2 = HttpVisit("59.112.33.214", "bbs.it-home.org", "/abc.php");
- $server_info3 = HttpVisit("59.112.33.215", "bbs.it-home.org", "/abc.php");
- ?-->
|