首頁 後端開發 php教程 做了CDN获取用户真实IP的函数代码(PHP与Asp设置方式)_PHP

做了CDN获取用户真实IP的函数代码(PHP与Asp设置方式)_PHP

Jun 01, 2016 pm 12:07 PM
cdn

asp函数代码:
复制代码 代码如下:
function checkip(checkstring)'用正则判断IP是否合法
dim re1
set re1=new RegExp
re1.pattern=”^[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}$”
re1.global=false
re1.Ignorecase=false
checkip=re1.test(checkstring)
set re1=nothing
end function

function get_cli_ip()'取真实IP函数,先 HTTP_CLIENT_IP 再 HTTP_X_FORWARDED_FOR 再 REMOTE_ADDR
dim client_ip
if checkip(Request.ServerVariables(”HTTP_CLIENT_IP”))=true then
get_cli_ip = checkip(Request.ServerVariables(”HTTP_CLIENT_IP”))
else
MyArray = split(Request.ServerVariables(”HTTP_X_FORWARDED_FOR”),”,”)
if ubound(MyArray)>=0 then
client_ip = trim(MyArray(0))
if checkip(client_ip)=true then
get_cli_ip = client_ip
exit function
end if
end if
get_cli_ip = Request.ServerVariables(”REMOTE_ADDR”)
end if
end function

discuz论坛取真实IP的php代码,其它类似,请参考稍做修改

(discuz修改include/common.inc.php)
用以下这段代码:
复制代码 代码如下:
if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'),'unknown')) {
$onlineip = getenv('HTTP_CLIENT_IP');
} elseif(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'),

'unknown')) {

$testip = explode('.', getenv('HTTP_X_FORWARDED_FOR'));

if ($testip[0]=='192′ && $testip[1]=='168′) {
$onlineip = getenv('REMOTE_ADDR');
}
elseif($testip[0]=='10′) {
$onlineip = getenv('REMOTE_ADDR');
}
else {
$onlineip = getenv('HTTP_X_FORWARDED_FOR');
}

//gamesir hack end} elseif(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'),

'unknown')) {
$onlineip = getenv('REMOTE_ADDR');
} elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER

['REMOTE_ADDR'],'unknown')) {
//by Johnny
$tmp_ip = explode(',',$_SERVER['HTTP_X_FORWARDED_FOR']);
$tmp_ip1 = explode(',',$tmp_ip[0]);
if ($tmp_ip1[0] =='192′ && $tmp_ip1[1] =='168′) {
$onlineip = getenv('REMOTE_ADDR');
}else if($tmp_ip1[0]=='10′) {
$onlineip = getenv('REMOTE_ADDR');
}
else{
$onlineip = $tmp_ip[0];
}
unset($tmp_ip);unset($tmp_ip1);

}

替换这段代码:

复制代码 代码如下:
if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'),'unknown')) {
$onlineip = getenv('HTTP_CLIENT_IP');
} elseif(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'),

'unknown')) {
$onlineip = getenv('HTTP_X_FORWARDED_FOR');
} elseif(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'),'unknown')) {
$onlineip = getenv('REMOTE_ADDR');
} elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER

['REMOTE_ADDR'],'unknown')) {
$onlineip = $_SERVER['REMOTE_ADDR'];
}

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

免備案cdn加速哪個最好 免備案cdn加速哪個最好 Jun 28, 2023 pm 04:42 PM

免備案cdn加速最好的是Cloudflare,Cloudflare提供了全球性的DDoS攻擊防護和Web應用安全服務,可以保護您的網站免受惡意攻擊。

Vue中如何配置和使用CDN進行加速 Vue中如何配置和使用CDN進行加速 Oct 15, 2023 pm 02:31 PM

Vue中如何設定並使用CDN進行加速在Vue專案中,使用CDN(ContentDeliveryNetwork)可以有效加速網頁載入速度,提升使用者體驗。 CDN技術透過將靜態資源檔案分發到全球各個地點的伺服器上,使用戶可以從離用戶最近的伺服器上快速取得資源,減少了資料傳輸的時間和延遲。以下將詳細介紹Vue中如何配置和使用CDN進行加速。首先,我們需要找到一

PHP實現CDN加速的方法及應用 PHP實現CDN加速的方法及應用 Jun 18, 2023 pm 06:42 PM

隨著網路的快速發展,網站存取速度越來越受到重視,而CDN(ContentDeliveryNetwork)就是目前最常用的加速網站存取的技術之一。 CDN加速透過多個伺服器分佈在不同地點,將使用者的請求轉送到離使用者較近的伺服器上,以此來加快網站的存取速度。在實現CDN加速中,PHP是一種常用的開發語言。本文將介紹如何使用PHP來實現CDN加速,以及應用於實際

百度網盤崩潰問題已解決並致歉:現已修復,請使用者嘗試重新登入 百度網盤崩潰問題已解決並致歉:現已修復,請使用者嘗試重新登入 Aug 10, 2023 pm 02:25 PM

根據本站8月9日16時許報道,百度旗下產品出現了大規模故障,例如百度網盤在使用過程中出現了視頻播放失敗的情況,其他業務也有用戶反映無法打開或崩潰的現象。經過本站的調查,發現是由於百度CDN服務異常所致百度網盤回應稱,對此問題十分抱歉並正在緊急修復中,請耐心等待,感謝您的理解五分鐘後,百度網盤回复說問題已解決,請您嘗試重新登錄,感謝您的支援CDN(內容分發網路)透過將來源站內容分發至全球各地的加速節點,使用戶在請求網站資源時能夠被調度至距離最近的加速節點,從而直接獲得所需內容,提高使用者對網站資源的訪問

優化Python網站存取速度,使用CDN、瀏覽器快取等靜態資源加速方法。 優化Python網站存取速度,使用CDN、瀏覽器快取等靜態資源加速方法。 Aug 04, 2023 pm 05:09 PM

优化Python网站访问速度,使用CDN、浏览器缓存等静态资源加速方法在当今互联网时代,用户对网站的访问速度要求越来越高。一个快速响应的网站能够提供更好的用户体验,从而增加用户的黏性和满意度。在Python网站开发中,通过使用CDN(内容分发网络)和浏览器缓存等静态资源加速方法,可以显著提升网站的访问速度。CDN是一种分布式的服务器网络,将静态资源存储在离用

怎麼使用Nginx反向代理與proxy_cache快取搭建CDN伺服器 怎麼使用Nginx反向代理與proxy_cache快取搭建CDN伺服器 May 12, 2023 pm 05:43 PM

碰到問題:行動用戶造訪web伺服器www.osyunwei.com很慢解決方法:1.在行動機房放置一台nginx反向代理伺服器2、透過網域dns智慧解析,所有行動用戶造訪www.osyunwei.com時解析到nginx反向代理伺服器3、nginx反向代理伺服器與web伺服器之間採用專線連接說明:1、web伺服器線路:電信ip:192.168.21.129網域名稱:www.osyunwei.com2、nginx反向代理伺服器線路:移動系統:centos6.2ip:192.168.21.164vi/e

cdn是啥 cdn是啥 Aug 10, 2023 pm 04:28 PM

CDN是內容分發網路的縮寫,一種分散式網路架構,透過將內容分發到全球各地的伺服器節點上,以提高內容傳輸速度、降低網路延遲、減輕伺服器負載、提高網站可靠性和抵禦攻擊的網絡架構,透過CDN,使用者可以更快速地存取所需的內容,提升了使用者體驗,同時也提高了網站的效能和安全性。

PHP中的CDN PHP中的CDN May 25, 2023 pm 07:31 PM

近年來,隨著網路的不斷發展,網頁的速度與穩定性已成為用戶關注的重要議題。針對這個問題,CDN(ContentDeliveryNetwork,內容傳遞網路)應運而生。在PHP開發中,如何利用CDN來提升網站的速度與穩定性,是開發者需要關注與應用的技術。本文將介紹PHP中的CDN技術,從理解CDN的基本原理開始,到詳細講解PHP中如何使用CDN提高網頁加載

See all articles