當您要在社交媒體、微博、簡訊或者電子郵件中發送連結的時候,你會發現原始的長連接十分影響內容的閱讀。這時候便要使用短連結生成器了,這個工具可以幫助您縮短原長連結,今天來說說短連結生成原理是什麼。
短連結生成原理
短連結生成工具之所以能夠縮短連結,是因為使用web伺服器的URL重定向功能。其原理就是把新URL(短連結)重定向到舊URL(長連結)。當您在瀏覽器輸入或者點擊URL的時候,它實際上將HTTP命令發送到Web伺服器,指示web頁面該如何工作。伺服器可以返回一系列重定向HTTP響應碼,包括以下內容:
-301(永久重定向)永久把一個連結重定向到另一個連結。
-302(臨時重定向)臨時把一個連結重定向到另一個連結。
-303(其他)返回「請參閱其他」狀態,指示資源以及被替換
短連結生成器的原理基本分為2個步驟:
1.從長網址獲取哈希值(生成短網址)
2.將短網址跳轉到短網址。
第二部分工作通常是用mod_rewrite來完成。一些基本的重寫規則可以是這樣的:
RewriteEngine On
RewriteBase /
RewriteRule ^(.*)$ index.php?hash=$1 [L]
mod_rewrite從url獲取哈希值,並將其傳遞給GET方法的變量。腳本將通過此哈希值,$_GET['hash']從資料庫獲取url的原始長版,並將瀏覽器的位置重定向到該位置。
示例:如何使用三維推短連結生成器縮短URL
我們只需要把相應的長連接輸入,然後點擊立即縮短則得到了生成的短網址。
為什麼要縮短網址?
短網址的起源在於推特和微博對於字數的限制。為了在輸入網址的時候節省字符空間,便有了縮短網址的需求。而後來發現短連結更方便人們進行內容閱讀,因此在簡訊推廣、郵件推廣等方面也流行起來。還有些人使用短連結是為了隱藏原始域名,防止流量平臺屏蔽。
短連結生成原理本身不複雜,需要將長連接和短連接在資料庫中的ID生成哈希數來減少在資料庫中的欄位。真正的難點在於大量連結生成的壓力以及風控問題。