多多色-多人伦交性欧美在线观看-多人伦精品一区二区三区视频-多色视频-免费黄色视屏网站-免费黄色在线

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php開源 > php教程 > 同域名多IP下PHP獲取遠程網頁內容的函數

同域名多IP下PHP獲取遠程網頁內容的函數

來源:程序員人生   發布時間:2013-12-01 03:39:35 閱讀次數:2726次

  建站學院(LieHuo.Net)PHP教程 PHP獲取遠程網頁內容有多種方式,例如用自帶的file_get_contents、fopen等函數。

<?php  
echo file_get_contents("
http://www.veryhuo.com/abc.php
");  
?>

  但是,在DNS輪詢等負載均衡中,同一域名,可能對應多臺服務器,多個IP。假設blog.kcoffee.net被DNS解析到72.249.146.213、72.249.146.214、72.249.146.215三個IP,用戶每次訪問blog.kcoffee.net,系統會根據負載均衡的相應算法訪問其中的一臺服務器。

  上周做一個視頻項目時,就碰到這樣一類需求:需要依次訪問每臺服務器上的一個PHP接口程序(假設為abc.php),查詢這臺服務器的傳輸狀態。

  這時就不能直接用file_get_contents訪問blog.kcoffee.net/abc.php了,因為它可能一直重復訪問某一臺服務器。

  而采用依次訪問http://72.249.146.213/abc.php、http://72.249.146.214/abc.php、http://72.249.146.215/abc.php的方法,在這三臺服務器上的Web Server配有多個虛擬主機時,也是不行的。

  通過設置本地hosts也不行,因為hosts不能設置多個IP對應同一個域名。

  那就只有通過PHP和HTTP協議來實現:訪問abc.php時,在header頭中加上blog.kcoffee.net域名。于是,我寫了下面這個PHP函數。

以下為引用的內容:
<?php  
/************************ 
* 函數用途:同一域名對應多個IP時,獲取指定服務器的遠程網頁內容 
* 創建時間:2008-12-09 
* 創建人:張宴(blog.s135.com) 
* 參數說明: 
*    $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";  
        $out .= "Host:{$host}";     
        $out .= "Connection: close";  
        fputs ($fp, $out);     
 
        while($line = fread($fp, 4096)){  
           $response .= $line;  
        }  
        fclose( $fp );  
 
        //去掉Header頭信息  
        $pos = strpos($response, "");  
        $response = substr($response, $pos + 4);  
      
        return $response;     
    }     
}  
 
//調用方法:  
$server_info1 = HttpVisit("72.249.146.213", "blog.s135.com", "/abc.php");  
$server_info2 = HttpVisit("72.249.146.214", "blog.s135.com", "/abc.php");  
$server_info3 = HttpVisit("72.249.146.215", "blog.s135.com", "/abc.php");  
?> 

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 亚洲成a人片在线观看中文动漫 | 好好的曰www视频在线观看 | 91精品欧美一区二区三区 | 男女免费观看在线爽爽爽视频 | 夜夜未满十八勿进的爽爽影院 | 中文字幕一区二区在线视频 | 337p日本欧美在线观看 | 最新亚洲国产有精品 | 波多野结衣中文字幕在线 | 日韩欧美在线第一页 | 国产欧美久久久另类精品 | 久久久久88色偷偷 | 国产精品久久久久久亚洲小说 | 国产午夜精品久久久久小说 | 日本一级α一片免费视频 | 亚洲欧洲日本天天堂在线观看 | 中文字幕精品视频在线 | 手机精品视频在线观看免费 | 4虎1515hh永久免费 | 欧美freesex10一13| 国产精品久久在线观看 | 国产精品系列在线一区 | 伊人成综合 | 波多野结衣一级视频 | 亚洲色图 欧美 | 欧美极品videosex性欧美 | 最近中文字幕无免费 | 亚洲国产日韩成人综合天堂 | 视频一区色眯眯视频在线 | 性欧美丨18一19 | 成人亚洲天堂 | 亚洲福利专区 | 午夜免费影院 | 亚洲4区| 亚洲视频2 | 最近中文字幕国语完整在线5 | 欧美理伦视频 | 泰国一级毛片aaa下面毛多 | 欧美综合在线播放 | 在线不卡免费视频 | 久久国产精品成人免费 |