自動識別IP,并跳轉(zhuǎn)到來訪問者所在的城市
先去下一個最新的純真IP數(shù)據(jù)庫,然后按如下操作:
1.運行純真QQIP數(shù)據(jù)庫里帶的ShowIP.exe,點解壓,輸入文件名,比如IP.txt,確定,就得到一個TXT文件。
2.打開ACCESS,工具-自定義,命令選項卡,把導入選項拖動到上面的工具欄。
3.建庫,建一個表,四個字段
Startip 類型:文本 (相關(guān)城市的IP段信息)
Endip 類型:文本 (相關(guān)城市的IP段信息)
Country 類型:文本 (相關(guān)城市名稱)
ReUrl 類型:文本 (你想要跳轉(zhuǎn)的城市路徑如:北京 [url]http://bj.abc.com)[/url]
4.點導入按鈕,文件類型選文本文件,找到剛才導出的IP.txt文件,導入到剛才建的表里~
運算將真實IP轉(zhuǎn)換為數(shù)字,比如北京的IP段是 : 1.1.0.0 -- 1.1.0.255
Startip: 1*256*256*256+1*256*256+0*256+0 = 16842752 (這個數(shù)字才是最終要放到數(shù)據(jù)庫里)
Endip: 1*256*256*256+1*256*256+0*256+255 = 16843007 (這個數(shù)字才是最終要放到數(shù)據(jù)庫里的)
可用程序批量處理,如果沒時間(像我一樣)你就直接去下個動網(wǎng)(好像風四也帶了)的IP庫,它是已經(jīng)處理好了的,下面是程序部分:
user_ip = Request.ServerVariables("REMOTE_ADDR") '取得訪問者IP
userip_ary=split(user_ip,".")
tmp_userip=userip_ary(0)*256*256*256+userip_ary(1)*256*256+userip_ary(2)*256+userip_ary(3) ' 按規(guī)定轉(zhuǎn)換IP為數(shù)字
‘從數(shù)據(jù)庫找出用戶IP屬于的城市
set rs=Server.CreateObject("ADODB.Recordset")
sql="select * from ip where Startip<="&tmp_userip&" and Endip>="&tmp_userip
rs.open sql,conn,1,1
if rs.eof then
response.redirect "index.asp" ’如果沒有該城市或是IP無法識別則轉(zhuǎn)到首頁,也可以指定頁面
else
response.redirect rs("ReUrl") ’如果有轉(zhuǎn)到指定頁面
end if
rs.close
set rs=nothing
將上面的程序放到你的虛擬主機默認訪問首頁里!或是其它的頁面里(當然你同樣要在虛擬主機控制面板里設(shè)置默認首先訪問的是這個文件)
下一條: 值得收藏的一些代碼