2012-04-11 36 views
2

我正在尋找一種在空間方面效率最高的url編碼方法。原始二進制(base2)可以用base16表示,它比較小並且是網址安全的,但base64更加高效。然而,通常的base64編碼是不安全的網址....什麼是最小的URL友好編碼?

那麼什麼是最小的編碼方法也是安全的URLS?

回答

2

可以使用62個字符表示而不是通常的底部64的這會給你的URL例如YouTube的: http://www.youtube.com/watch?v=0JD55e5h5JM

,如果你需要映射的字符串您可以使用該頁面提供的PHP函數到數據庫的數字ID:

http://bsd-noobz.com/blog/how-to-create-url-shortening-service-using-simple-php

或者這一個,如果你需要一個數字ID直接轉換成短URL字符串: http://kevin.vanzonneveld.net/techblog/article/create_short_ids_with_php_like_youtube_or_tinyurl/

1

這就是Base64 URL encoding variant的用途。

它使用相同的標準Base64字母,但+更改爲-/更改爲_

大多數現代的Base64實現將支持這種替代編碼。如果你的不支持,通常只是在解碼之前在Base64輸入上進行搜索/替換,或者在將輸出發送到瀏覽器之前進行替換。