2012-04-11 71 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输入上进行搜索/替换,或者在将输出发送到浏览器之前进行替换。