999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于DNS和HTTP方式的URL轉發的比較和實現

2013-04-29 00:44:03張桂香鮑國林
無線互聯科技 2013年5期
關鍵詞:設置用戶

張桂香 鮑國林

摘 要:URL轉發功能是網絡世界中訪問網站和管理網站常見需求,但是實現方法各異。本文分析了DNS和HTTP協議不同層次轉發方法,提供了一種結合兩者相對優點而實現URL轉發功能的服務架構,完成互聯網用戶對域名或URL轉發要求。

關鍵詞:URL轉發;HTTP跳轉

URL(Uniform Resource Locator的縮寫),中文為“統一資源定位符”,在互聯網領域也被稱為“網址”,是因特網上標準的資源地址,最初由Sir Tim Berners-Lee發明,現已經W3C編制為因特網標準RFC 1738[1]。

根據RFC 1738,對于常用網絡訪問URL格式如下:

host:網絡主機域名或IP地址(RFC 1034/RFC 1123);

port:連接端口號,可缺省;對HTTP缺省端口80(HTTPS:443;FTP:21);

本文將介紹DNS和HTTP兩種轉發方法基本原理,分析各自特征,設計一種將域名或URL轉發到另一個URL的解決方案,為有URL轉發需求用戶提供解決方案。

1 URL轉發

所謂URL轉發,就是通過DNS或HTTP設置,實現當訪問網址時會自動跳轉到指定另一個網址的功能。

2 URL轉發原理

按照轉發對象需要、實現協議、實現層次不同,對于URL轉發可通過DNS或HTTP(HTTPS)設置實現。

2.1 DNS方式

僅對于主機地址(host)轉發需求,根據DNS協議[2],可以通過CNAME(別名)實現將源域名轉發到目的域名(轉發)為主機應用服務器。在RFC中列舉示例如下:

在某個tld的zone文件中設置了如上CNAME記錄,則對于“USC-ISIC.ARPA.tld”這個域名請求,會被定向到“C.ISI.EDU.tld”上。

CNAME提供了域名(domain name)轉發方法,之后DNS領域又提供了DNAME方式[3],實現了域(domain)轉發。

以上兩種方式可以很容易實現將源域名定向到轉發服務器,這個過程是隱性的,在DNS范圍之外無法被檢測,缺點是其轉發僅限于域名部分,對于URL中的PATH部分無法改變。

2.2 HTTP方式

超文本傳輸協議是互聯網上應用最為廣泛的一種網絡協議。關于HTTP的RFC 2616[4],定義了HTTP協議中現今廣泛使用的一個版本—HTTP 1.1。設計HTTP最初目的是為了提供一種發布和接收HTML頁面方法。通過HTTP或者HTTPS協議請求的資源由統一資源標識符(URI)來標識。而使用HTTP協議中“狀態碼3xx”做重定向URI(轉發),是網頁瀏覽中一個常見功能。

2.2.1 HTTP狀態碼3xx轉發方式

HTTP狀態碼3xx轉發方式中,返回狀態碼以3開頭,表示瀏覽器將重定向到另一個地址。HTTP標準定義了幾種重定向狀態碼3xx定義如下:

1) 300 Multiple Choices

2) 301 moved permanently

3) 302 found

4) 303 see other

5) 304 not modified

6) 305 use proxy

7) 307 temporary redirect

下面根據不同3xx返回碼對URL轉發方式做一個詳述:

1)300 Multiple Choices

300含義:客戶請求的文檔可以在多個位置找到,這些位置已經在返回Location內列出。如果服務器提出優先選擇,則應該在Header的location指明。

按照RFC2616中說明,在header中設置了location,但是只有IE、360、opera、Firefox可以跳轉到最終頁面,對于chrome瀏覽器,不會進行重定向。

所以即使在header中的location中有指定,當index中除了重定向還有別的內容,但是有些瀏覽器不能實現重定向,不可以自動跳轉。所以URL如果使用300重定向會有部分瀏覽器無法轉發的問題。

2)301moved permanently

301為永久重定向即:請求網頁已永久移動到新位置。當URL發生變化時,使用301代碼返回后,搜索引擎會保存新的URL,所以301對SEO[5]比較友好。

RFC規定,新的URI在location頭中給出,瀏覽器應該自動訪問新的URI。但同時響應內容中最好包含一個指定新地址的超鏈接,這樣,在不支持自動轉向的瀏覽器用戶也可以通過點擊超鏈接來重定向到新的URI,盡管目前還沒有測試到不支持跳轉的瀏覽器。

3)302found

是暫時重定向(temporary redirect),只有當一個網站或網頁在24到48小時之內臨時移到其它位置情況下才能使用該命令。

在前些年不少Black Hat SEO曾廣泛應用這項技術作弊,目前各大主要搜索引擎均加強了打擊力度,像Google前些年對Business.com以及近來對BMW德國網站懲罰。即使網站客觀上不是spam,也很容易被搜尋引擎誤判為spam而遭到懲罰。由于對SEO不友好,盡可能只在臨時重定向時使用。

4)303see other

與302不同之處:如果原來請求是POST,LOCATION指定的重定向目標文檔應該通過GET提取,所以會丟棄用戶通過POST方式發送數據。RFC中提到,許多HTTP/1.1版以前的瀏覽器不能正確理解303狀態,如果需要考慮與這些瀏覽器之間的兼容性,302狀態碼可以替換303。

5)304not modified

如果客戶端有本地緩存,并發出一個條件性請求(一般是提供if-modified-since頭,表示客戶只需要指定日期后更新的文檔)。服務器告訴原緩沖文檔還可以繼續使用。如果網頁自請求者上次請求后沒有更新,則用304代碼告訴搜索引擎機器人,可節省帶寬和開銷。這個需要判斷是否發生了變化。

6)305use proxy

RFC規定,被請求資源必須通過指定代理才能被訪問。Location域中將給出指定代理所在的URI信息,接收者需要重復發送一個單獨請求,通過這個代理才能訪問相應資源。只有原始服務器才能創建305響應。但目前很多瀏覽器不支持。

7)306switch proxy

預留狀態,未使用。

8)307temporary redirect

和303相同,對于非GET和HEAD請求不能自動重定向。出現307應答時,瀏覽器可以繼續完成重定向的GET和POST請求。 但是307沒有被完全支持,opera不支持;Firefox,IE等瀏覽器可以重定向。

除了使用HTTP狀態進行轉發之外,還有另外一些巧妙方法,甚至可能實現作弊或釣魚,如下面兩個:

9)iFrame隱藏頁面

這是一種隱藏地址欄URL顯示方法,即跳轉后地址欄顯示的是源轉發地址而非目的地址。相當于做了一個頁面將目的頁面嵌入在里面。

10)meta fresh

這在2000年前比較流行,不過現在已很少見。具體實現是通過網頁中meta指令,在特定時間后重定向到新網頁。但是如果延遲時間太短(約5秒之內),會被判斷為spam。

2.2.2 HTTP轉發方式總結

在HTTP協議中3xx響應中,300、305、307都會存在瀏覽器不識別問題;303主流都支持(IE,火狐,360,opera,chrome),但可被302替代;目前301、302、304用的比較多。在使用上,304有特定應用場景,即需要對目的資源是否與客戶端上次訪問內容是否變更進行判斷。

因此,以常用的301、302以及采用iFrame的隱藏方式做實驗,分析客戶端、服務端對地址識別情況:

綜上,對HTTP轉發來說,301和302是常見、可用的HTTP轉發方式。

3 URL轉發的實現

現在根據一個常見互聯網服務提供商(Registrar)角度,實現從域名s.tld訪問到URL:http://www.d.com/p的一種方法:

⑴轉發設置中的源地址(s.tld),目的URL(http://www.d.com/p)需要在兩種服務器上設置生效,包括DNS解析服務器和URL轉發的服務器;

⑵互聯網用戶訪問http://s.tld時,會首先到DNS解析服務器上,查詢到s.tld的CNAME記錄,如redirect.tld;而URL轉發WEB服務器地址就是redirect.tld;這樣第3步將會訪問URL轉發服務器;

⑶用戶訪問URL轉發WEB服務器redirect.tld時,由URL轉發WEB服務器上的查詢服務(DB/MEM等方式)查詢用戶設置源地址和目的地址,然后HTTP訪問返回301/302,并指定目的http://www.d.com/p;

⑷用戶最終會訪問http://www.d.com/p;

4 結束語

互聯網用戶出于各種目的,需要域名或URL轉發業務,DNS設置比較隱蔽,但是只能針對域名;而采用HTTP的URL方式轉發,特別是301、302方式,普遍用在單個網頁服務內部。而采用DNS+HTTP方式,配置靈活,入口設置方便,并且支持容量更大,因為DNS服務能力(UDP)比HTTP服務要強很多(TCP)。

本文分析了DNS設置,以及HTTP轉發(URL Forwarding)請求的幾種不同方式,設計并實現了一種服務場景,可以為互聯網用戶提供高性能、易配置和服務靈活的URL轉發功能。

[參考文獻]

[1]T.Berners-Lee,L.Masinter,M.McCahill.Uniform Resource Locators(URL).Request for Comments:1738.December1994.

[2]P.Mockapetris,DOMAIN NAMES-CONCEPTS AND FACILITIES,November1987.Request for Comments:1034,

[3]S.Rose,W.Wijngaards,DNAME Redirection in the DNS,June 2012,ISSN:2070-1721,Request for Comments:6672

[4]R.Fielding,J.Gettys,J.Mogul,H.Frystyk,L.Masinter,P.Leach,T.Berners-Lee,June1999,Hypertext Transfer Protocol--HTTP/1.1, Request for Comments:2616

[5]"Bing–Partnering to help solve duplicate content issues–Webmaster Blog–Bing Community".www.bing.com.Retrieved October 30,2009.

猜你喜歡
設置用戶
中隊崗位該如何設置
少先隊活動(2021年4期)2021-07-23 01:46:22
7招教你手動設置參數
關注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
關注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
本刊欄目設置說明
中俄臨床醫學專業課程設置的比較與思考
Camera360:拍出5億用戶
創業家(2015年10期)2015-02-27 07:55:08
100萬用戶
創業家(2015年10期)2015-02-27 07:54:39
如何獲取一億海外用戶
創業家(2015年5期)2015-02-27 07:53:25
主站蜘蛛池模板: 99免费视频观看| 日本在线视频免费| 国产日韩丝袜一二三区| 91福利片| 久久久亚洲国产美女国产盗摄| 亚洲bt欧美bt精品| 免费高清a毛片| 亚洲精品无码在线播放网站| 亚洲毛片一级带毛片基地| 亚洲无码视频喷水| 久久中文字幕2021精品| 在线国产综合一区二区三区| 日韩精品高清自在线| 久久综合激情网| 亚洲成a人片在线观看88| 91年精品国产福利线观看久久 | 中文字幕av一区二区三区欲色| 国产精品亚洲va在线观看| www中文字幕在线观看| a国产精品| 91在线一9|永久视频在线| 欧美精品高清| 欧美一级高清免费a| 色综合天天综合中文网| 国产91透明丝袜美腿在线| 欧美在线导航| 99精品福利视频| 亚洲成网站| 日本国产在线| 国产一区二区三区精品欧美日韩| 亚洲精品国产首次亮相| 日韩亚洲综合在线| 伊人久久精品无码麻豆精品 | 国产日本视频91| 国产亚洲现在一区二区中文| 午夜日b视频| 亚洲国产91人成在线| 久草视频精品| 午夜精品国产自在| 五月婷婷丁香综合| 国模沟沟一区二区三区 | 欧美亚洲日韩中文| 亚洲一区毛片| 亚洲国产成人麻豆精品| 99久久精品国产自免费| 国产乱视频网站| 国产一级小视频| 无码有码中文字幕| 久久人妻系列无码一区| 一本大道香蕉中文日本不卡高清二区| 无码人妻免费| 欧美成一级| 精品夜恋影院亚洲欧洲| 19国产精品麻豆免费观看| 欧美亚洲一二三区| 国产激情无码一区二区免费| 婷婷午夜影院| 国产精品私拍在线爆乳| 国产精品熟女亚洲AV麻豆| 国产成人精品午夜视频'| 精品天海翼一区二区| 综合网天天| 蜜桃视频一区| 欧美激情一区二区三区成人| 91久久偷偷做嫩草影院免费看| 好紧好深好大乳无码中文字幕| 亚洲一区国色天香| 国产无码性爱一区二区三区| 亚洲综合久久成人AV| 日韩毛片免费观看| 成年人久久黄色网站| 99热这里只有免费国产精品| 色悠久久综合| 日韩人妻无码制服丝袜视频| 伊人91视频| 日韩欧美成人高清在线观看| 亚洲天堂视频在线免费观看| 久久无码av三级| 亚洲va在线∨a天堂va欧美va| 亚洲色图综合在线| 国产欧美在线| 一区二区三区国产精品视频|