国产精品免费虐久久久久影院_亚洲日韩av一区二区三区久久_一个人的视频全免费在线观看www_国产黄色福利青草精品在线_久久机热国产精品免费观看_日本一二三区免费在线_好亚洲亚洲人成综合网站图片_亚洲中文字幕超碰无码资源_日本人天天干夜夜操b视频_动漫女扒开腿爆乳无遮挡gif

FASTGPT 喵言AI 續(xù)費(fèi)系統(tǒng)

采用CDN加速后,如何在程序里獲取用戶(hù)IP地址

現(xiàn)在很多網(wǎng)站用了CDN技術(shù),但采用CDN技術(shù)后,原來(lái)用來(lái)獲取訪問(wèn)源的IP地址的程序已不能正常使用,它拿到的并不是訪問(wèn)源的真實(shí)IP地址,而是CDN節(jié)點(diǎn)的IP地址,解決方法是對(duì)獲取IP的代碼作一點(diǎn)小改動(dòng)。

在沒(méi)有使用CDN之前,我們?nèi)绻朐诰W(wǎng)站程序里拿到瀏覽者的IP,只需要讀取 REMOTE_ADDR 這個(gè)服務(wù)器變量就行了,而采用CDN后,REMOTE_ADDR 這個(gè)變量的值并不是訪問(wèn)源的上網(wǎng)IP地址,而是CDN節(jié)點(diǎn)的IP地址,而用戶(hù)的真實(shí)上網(wǎng)IP是放在 HTTP_X_FORWARDED_FOR 這個(gè)變量里的,既然這樣,我們只需寫(xiě)個(gè)兼容性的函數(shù)來(lái)獲取IP地址即可,代碼示例如下:

1. asp 的示例代碼

<%

Function GetClientIP()

 Dim ip

 ip = Request.ServerVariables("HTTP_X_FORWARDED_FOR")

 If(ip <> "") Then

  Dim arr

  arr = Split(ip,",")

  GetClientIP = arr(0)

 Else

  GetClientIP = Request.ServerVariables("REMOTE_ADDR")

 End if

End function

Response.Write("您的上網(wǎng)IP是:" + GetClientIP())

%>

2. asp.net 的示例代碼

<%@Page Language="C#"%>

3. php 的示例代碼

function GetClientIP(){

 $ip = $_SERVER["HTTP_X_FORWARDED_FOR"];

 if($ip != ""){

  $arr = explode(",",$ip);

  return $arr[0];

 }else{

  return $_SERVER["REMOTE_ADDR"];

 }

}

echo "您的上網(wǎng)IP是:".GetClientIP();

?>