成全电影大全在线观看国语版免费,成全电影大全在线观看国语高清,成全在线电影在线观看,成全动漫影视大全在线观看国语,成全在线观看高清完整版免费动漫,成全电影大全免费观看完整版国语,三人成全免费观看电视剧高清一共多少集啊,成全电影大全在线播放,成全电影大全在线观看高清版,成全影视在线观看第6季,成全电影大全在线观看高清免费播放电视剧,成全在线观看免费完整版第6,成全电影大全在线观看

接入高防后如何讓服務(wù)器程序獲取用戶真實訪問IP

很多時候,我們的網(wǎng)站并不是簡單的從用戶的瀏覽器直達(dá)你的服務(wù)器的途徑, 考慮到網(wǎng)站的訪問速度、安全等屬性,我們中間可能會加入高防IP、高防CDN,或者是接入了反向代理模式下的其他的安全產(chǎn)品等。

以網(wǎng)站fenghexin.com接入高防為例,它的流量途徑可能是:?

普通用戶瀏覽器??—–>??高防(防DDOS、 CC、Web攻擊) ——>??源站服務(wù)器(PHP 程序部署在這里,iptables, nginx 安全配置)

那么問題來了,經(jīng)過這么多層加速,服務(wù)器如何才能得到發(fā)起請求的真實客戶端IP呢?

當(dāng)一個透明代理服務(wù)器(如高防)把用戶的請求轉(zhuǎn)到后面服務(wù)器的時候,如果開啟了fenghexin.com的網(wǎng)站防護(hù)配置,那么高防會在 Http 的頭中加入一個記錄

X-Forwarded-For :??用戶真實IP, 高防代理IP

如果中間經(jīng)歷了不止一個代理服務(wù)器,如經(jīng)過了CDN等等,那么X-Forwarded-For可能會為以下的形式:

X-Forwarded-For :??用戶IP, 代理服務(wù)器1-IP, 代理服務(wù)器2-IP, 代理服務(wù)器3-IP, ….

我們可以看到經(jīng)過多層代理后, 請求用戶的真實IP在第一個位置, 后面會跟一串中間代理服務(wù)器的IP地址,從這里取到用戶真實的IP地址,針對這個 IP 地址做限制就可以了。那么如何獲取X-Forwarded-For的內(nèi)容?

常用的服務(wù)獲取X-Forwarded-For字段內(nèi)容可通過如下方式:

ASP:

Request.ServerVariables(“HTTP_X_FORWARDED_FOR”)

ASP.NET(C#):

Request.ServerVariables[“HTTP_X_FORWARDED_FOR”]

PHP:

$_SERVER[“HTTP_X_FORWARDED_FOR”]

JSP:

request.getHeader(“HTTP_X_FORWARDED_FOR”)

在您獲取到X-Forwarded-For的相關(guān)內(nèi)容后,那么以“,”作為區(qū)分符截取其中的第一個IP地址即可。

相關(guān)新聞