本頁使用了標題或全文手工轉換

網域名稱轉址

維基百科,自由的百科全書
前往: 導覽搜尋
中國大陸 URL重定向
港臺 網域名稱轉址、URL重新導向

網域名稱轉址英語:URL redirection,或稱網址重新導向URL重定向),是指當使用者瀏覽某個網址時,將他導向到另一個網址的技術。常用在把一串很長的網站網址,轉成較短的網址。因為當要傳播某網站的網址時,常常因為網址太長,不好記憶;又有可能因為換了網路的免費網頁空間,網址又必須要變更,不知情的使用者可能會認為網站關閉了。這時就可以用網路上的轉址服務了。這個技術使一個網頁是可藉由不同的統一資源定位符(URL)連結。

目的[編輯]

網頁管理員有多個不同理由使用網域名稱轉址:

相似網域名稱[編輯]

瀏覽者可能輸入錯誤的網域名稱,如:gooogle.com或googel.com。機構或團體不時會註冊這些拼字不正確的網域名,重新導向到正確地方:google.com。例如:example.com和example.net兩者均會重新導向至像是example.org的單一網域或網頁。這個技術不時用於保留其他相同名稱的高級網域(TLDs),或是使真正的.edu或.net重新導向至更能辨識的.com網域。

移動網站至新網域[編輯]

為何重新導向一個網頁?

  • 網站需要改變它的網域名稱。
  • 作者移動他/她的網頁至新網域名稱。
  • 2個網站結合。

藉由網域名稱轉址,過時的網址可以轉址到正確位址。這些連結可能來自其他尚未知道網域名稱改變的網站,或是儲存於使用者瀏覽器的書籤/我的最愛。

相同的道理套於搜尋引擎。它們不時會有舊或過時的網域名稱和連結,在它們的資料庫內,帶使用者到舊的網址。使用網域名稱轉址,瀏覽者最後會到達正確的頁面。另外,在下一次的「搜尋引擎通過」,搜尋引擎會偵測及使用新的網址。

記錄外送連結[編輯]

大部份的網頁伺服器的存取記錄,儲存了有關瀏覽者來源和如何瀏覽網站的詳細資料,但是不會記錄瀏覽者由那些連結離開,這是因為瀏覽者的瀏覽器,不需要在瀏覽者按下外接連結時,與原來的伺服器溝通。

這個資訊可由多個途徑獲取。其中一個途徑涉及網域名稱轉址。連結可以轉到在原來的網域名稱的一個統一資源位址,它會重導向至真正目標,而不是直接連結至其他網站。這會增加一個請求至網頁伺服器,而這個多出來的請求,會在伺服器的存取記錄留下記錄,說明了那個連結曾被點擊。這個技術亦被一些公司網站採用,用以顯示"警告"頁面,指出內容是非該站內容和該站無關。這個技術有不足之處,是它會增加一個請求至原本的網頁伺服器,造成延遲。對於一些希望在自動轉址前,顯示"警告"頁面的網站,顯示警告訊息的時間長度是一個附加的延遲。

簡化網址[編輯]

現時,網站工程師傾向在網址傳遞帶描述性的屬性,以表示資料的結構層次,命令結構,交易路徑(transaction paths)及會話(session)資訊。這使得網址感覺上不友善,且難以記憶。有些時候,網站工程師會將頁面的網址通過這樣的方法簡化。所以網址改變後,內容也沒有改變。

局部地區的使用限制[編輯]

一般情況下,中國大陸地區在域名代理網站使用域名管理時,都可以自行設定A記錄、URL轉址等解析操作。

2009年12月28日,中國歷史最久、規模最大的域名代理商萬網發出公告,稱為了切實落實工業和信息化部發出的《工業和信息化部關於進一步深入整治手機淫穢色情專項行動工作方案》(工信部電管【2009】672號)的精神,貫徹落實依法打擊手機淫穢色情專項行動方案,防止違規網站利用變換域名等手段逃避監管的行為,決定將於2009年12月29日下午2:00起緊急停止域名URL轉發服務。[1]隨後,萬網又告知客戶,在已取得網站備案和獨立IP的情況下,用戶可以花費購買URL轉發服務,價格最低100元/5個(人民幣)URL轉發記錄。這意味著原來捆綁在域名費用裡面、免費設定URL轉發的功能,被單獨提出,變成收費服務。

目前,另一域名商新網也實施該項措施。

技術[編輯]

HTTP檔頭轉址[編輯]

  • 使用PHP轉址到http://www.example.com/
<?php
header('HTTP/1.1 301 Moved Permanently');
header('Location: http://www.example.com/');
exit();
<?php
header( 'Refresh: 0; url=http://www.example.com/' );
exit();

Apache mod_rewrite[編輯]

  • Apache HTTP Server's mod_alias extension
Redirect permanent /oldpage.html http://www.example.com/newpage.html
Redirect 301 /oldpage.html http://www.example.com/newpage.html
  • Apache mod_rewrite
RewriteEngine on
RewriteCond %{HTTP_HOST} ^([^.:]+\.)*oldsite\.example\.com\.?(:[0-9]*)?$ [NC]
RewriteRule ^(.*)$ http://newsite.example.net/$1 [R=301,L]

HTML的Refresh Meta tag and HTTP refresh header[編輯]

<html>
    <head>
        <meta http-equiv="Refresh" content="0; url=http://www.example.com/" />
    </head>
    <body>
    </body>
</html>

JavaScript redirects[編輯]

window.location='http://www.example.com/';

HTML的Frame redirects[編輯]

<html>
    <frameset rows="100%">
      <frame src="http://www.example.com/">
    </frameset>
</html>

參見[編輯]

參考資料[編輯]

外部連結[編輯]