[發明專利]基于Nginx的地理位置信息查詢方法、裝置及系統在審
| 申請號: | 201410020360.8 | 申請日: | 2014-01-16 |
| 公開(公告)號: | CN104796437A | 公開(公告)日: | 2015-07-22 |
| 發明(設計)人: | 劉小杰 | 申請(專利權)人: | 深圳市快播科技有限公司 |
| 主分類號: | H04L29/08 | 分類號: | H04L29/08;H04L29/12 |
| 代理公司: | 深圳市順天達專利商標代理有限公司 44217 | 代理人: | 李琴 |
| 地址: | 518057 廣東省深圳市南山區高新*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 nginx 地理位置 信息 查詢 方法 裝置 系統 | ||
技術領域
本發明涉及網絡技術,尤其涉及一種基于Nginx的地理位置信息查詢方法、裝置及系統。
背景技術
WEB應用經常會需要根據客戶端的IP信息獲取該用戶的地理位置信息,根據地理位置的不同,WEB應用對不同位置的用戶呈現出差異化和針對性。在獲取和識別用戶地理位置的過程中,目前通用的做法是整理一個IP庫,記錄客戶端IP與其地理位置信息的對應關系,當接收到客戶端請求時,在WEB應用中直接通過客戶端IP查詢對應的地理位置信息。
在WEB應用中直接使用IP查詢地理位置信息的方式存在一些問題,包括:在常用的WEB應用開發語言(如Java,PHP,Python等)中,這種查詢往往效率不高,嚴重影響服務響應速度;不同的程序都需要進行重復開發,影響服務開發速度及可維護性;不同的語言要開發不同的版本,缺乏通用性。
發明內容
本發明實施例所要解決的技術問題在于,針對現有技術中不同WEB應用基于IP地址查詢地理位置信息的程序不能通用、且查詢效率不高的缺陷,提供一種基于Nginx的地理位置信息查詢方法、裝置及系統,可集中地為不同WEB應用提供地理位置信息,通用性強,且查詢效率高。
為了解決上述技術問題,本發明實施例提供了一種基于Nginx的地理位置信息查詢方法,包括:
從客戶端發送的HTTP請求中獲取所述客戶端的IP地址;
根據所述客戶端的IP地址獲取所述客戶端的地理位置信息;
將所述客戶端的地理位置信息添加至所述HTTP請求的URL中;
將添加了地理位置信息的HTTP請求轉發給所述HTTP請求對應的應用服務器。
其中,所述根據所述客戶端的IP地址獲取所述客戶端的地理位置信息的步驟包括:
預先設置IP庫,所述IP庫中包括IP地址與地理位置信息的對應關系;
根據所述客戶端的IP地址在所述IP庫中查找所述客戶端的地理位置信息。
其中,在所述IP庫中,將所有IP地址劃分為不同的IP網絡段,每個IP網絡段分別對應于一個地理位置信息。
其中,在所述IP庫中,所述IP網絡段是按照IP地址數值的升序或降序排列的;
所述根據所述客戶端的IP地址在所述IP庫中查找所述客戶端的地理位置信息的步驟包括:
采用二分查找算法在所述IP庫中查找與所述客戶端的IP地址相匹配的IP網絡段,將查找到的IP網絡段所對應的地理位置信息作為所述客戶端的地理位置信息。
其中,在所述IP庫中,所述IP網絡段是按照IP地址數值的升序排列的;
所述采用二分查找算法在所述IP庫中查找與所述客戶端的IP地址相匹配的IP網絡段的步驟包括:
將所述客戶端的IP地址與所述IP庫中間位置的IP網絡段對比,
當所述客戶端的IP地址數值小于所述IP庫中間位置的IP網絡段的起始IP地址數值時,從所述IP庫中間位置向前繼續查找與所述客戶端的IP地址匹配的IP網絡段;
當所述客戶端的IP地址數值大于所述IP庫中間位置的IP網絡段的結束IP地址數值時,從所述IP庫中間位置向后繼續查找與所述客戶端的IP地址匹配的IP網絡段;
當所述客戶端的IP地址數值不小于所述IP庫中間位置IP網絡段的起始IP地址數值、且不大于所述IP庫中間位置IP網絡段的結束IP地址數值時,將所述IP庫中間位置的IP網絡段作為與所述客戶端的IP地址相匹配的IP網絡段。
相應地,本發明還提供了一種基于Nginx的地理位置信息查詢裝置,包括:
客戶端IP獲取模塊,用于從客戶端發送的HTTP請求中獲取所述客戶端的IP地址;
客戶端位置獲取模塊,用于根據所述客戶端的IP地址獲取所述客戶端的地理位置信息;
位置信息添加模塊,用于將所述客戶端的地理位置信息添加至所述HTTP請求的URL中;
轉發模塊,用于將添加了地理位置信息的HTTP請求轉發給所述HTTP請求對應的應用服務器。
其中,所述客戶端位置獲取模塊包括:
IP庫設置模塊,用于預先設置IP庫,所述IP庫中包括IP地址與地理位置信息的對應關系;
查找模塊,用于根據所述客戶端的IP地址在所述IP庫中查找所述客戶端的地理位置信息。
其中,在所述IP庫中,將所有IP地址劃分為不同的IP網絡段,每個IP網絡段分別對應于一個地理位置信息。
其中,在所述IP庫中,所述IP網絡段是按照IP地址數值的升序或降序排列的;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳市快播科技有限公司,未經深圳市快播科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410020360.8/2.html,轉載請聲明來源鉆瓜專利網。
- 信息記錄介質、信息記錄方法、信息記錄設備、信息再現方法和信息再現設備
- 信息記錄裝置、信息記錄方法、信息記錄介質、信息復制裝置和信息復制方法
- 信息記錄裝置、信息再現裝置、信息記錄方法、信息再現方法、信息記錄程序、信息再現程序、以及信息記錄介質
- 信息記錄裝置、信息再現裝置、信息記錄方法、信息再現方法、信息記錄程序、信息再現程序、以及信息記錄介質
- 信息記錄設備、信息重放設備、信息記錄方法、信息重放方法、以及信息記錄介質
- 信息存儲介質、信息記錄方法、信息重放方法、信息記錄設備、以及信息重放設備
- 信息存儲介質、信息記錄方法、信息回放方法、信息記錄設備和信息回放設備
- 信息記錄介質、信息記錄方法、信息記錄裝置、信息再現方法和信息再現裝置
- 信息終端,信息終端的信息呈現方法和信息呈現程序
- 信息創建、信息發送方法及信息創建、信息發送裝置





