ASP自動識別IP,並跳轉到來訪問者所在的城市

來源:互聯網
上載者:User

自動識別IP,並跳轉到來訪問者所在的城市
先去下一個最新的純真IP資料庫,然後按如下操作:
1.運行純真QQIP資料庫裡帶的ShowIP.exe,點解壓,輸入檔案名稱,比如IP.txt,確定,就得到一個TXT檔案。
2.開啟ACCESS,工具-自訂,命令選項卡,把匯入選項拖動到上面的工具列。
3.建庫,建一個表,四個欄位
Startip 類型:文本 (相關城市的IP段資訊)
Endip 類型:文本 (相關城市的IP段資訊)
Country 類型:文本 (相關城市名稱)
ReUrl 類型:文本 (你想要跳轉的城市路徑如:北京 http://bj.abc.com)
4.點匯入按鈕,檔案類型選文字檔,找到剛才匯出的IP.txt檔案,匯入到剛才建的表裡~
運算將真實IP轉換為數字,比如北京的IP段是 : 1.1.0.0 -- 1.1.0.255
Startip: 1*256*256*256+1*256*256+0*256+0 = 16842752 (這個數字才是最終要放到資料庫裡)
Endip: 1*256*256*256+1*256*256+0*256+255 = 16843007 (這個數字才是最終要放到資料庫裡的)
可用程式批量處理,如果不會,而且沒時間(像我一樣)你就直接去下個動網的IP庫,它是已經處理好了的,下面是程式部分:

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) '' 按規定轉換IP為數字
 
'從資料庫找出使用者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無法識別則轉到首頁,也可以指定頁面
else
response.redirect rs("ReUrl") ’如果有轉到指定頁面
end if
rs.close
set rs=nothing
將上面的程式放到你的虛擬機器主機預設訪問首頁裡!或是其它的頁面裡(當然你同樣要在虛擬機器主機控制台裡設定預設首先訪問的是這個檔案)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.