2011-03-18 130 views
2

可能重複:
How do short URLs services work?短網址如何工作?

嗨,

任何人能解釋一下的短網址(技術上)工作,多長時間他們是有效的?任何關於它如何工作的文章也是受歡迎的(但請不要提供示例提供者站點)。

預先感謝您。

+2

Duplicate:[短網址服務如何工作?](http://stackoverflow.com/q/1562367/102112) – Alex 2011-03-18 11:26:03

+0

您的問題更多關於漂亮/友好的網址嗎? – Nilesh 2011-03-18 11:29:05

+0

@Nilesh:老實說,我沒有什麼漂亮/友好的網址,但問題是一般。 – CloudyMarble 2011-03-18 11:45:17

回答

3

短URL服務器具有數據庫匹配短URL(或,而URL的編碼的部分),以它代表實際的URL。

當它得到一個請求時,它會查找編碼部分和發送重定向到實際的URL。

因此,例如,URL http://tinyurl.com/so-hints

  • 將去TinyURL的服務器
  • 服務器將查找什麼完整的URL匹配so-hints
  • 服務器將發出重定向到瀏覽器去完整網址
+0

謝謝Oded,這意味着生成的URL將會變長,具體取決於有多少個條目。你知道這些提供者保存這些信息的時間(一般)嗎? – CloudyMarble 2011-03-18 11:33:56

+0

@ O.D - 一般而言,你是對的。他們使用完整的字母+數字。如果您認爲每個空間大約有35個組合,則10個字符可以容納10^35個URL。所以,他們需要一段時間才能變得有用... – Oded 2011-03-18 11:49:13

3
  1. 對於給定的URL創建一個唯一的標識符,在數據庫中,
  2. 當用戶訪問短網址,查找原始URL數據庫,
  3. 回報HTTP 3XX(重定向)狀態代碼到客戶端的實際地址。

短網址通常用數字和小寫和大寫字母的組合。該路徑組件的正好六個元素(26 + 10項)的組合已經可以提供2,176,782,336個唯一ID。

如果你想學習一些源代碼,本文着重介紹了7個開源腳本:

+0

你好,如何計算組合的數量? – Sonique 2013-06-29 23:05:01

1

這裏還有與從短映射表,高關係數據庫熵字符串到給定的URL。每當有人要求一個時,就會創建短字符串。他們不是任何形式的加密,它只是查找。

+1

數據庫不一定是關係型的。我用db4o製作了我的。 :) – 2011-03-18 11:29:33

1

他們管理的短到長的URL列表以及每個請求短網址重定向到其原來的一個