(1)将长网址md5生成32位签名串,分为4段,每段4个字节
对这4段循环处理,取4个字节(32位),将它看成16进制串与0x3fffffff(30位1)(2)与 *** 作,即超过30位的忽略处理
(3)这30位分成6段,每5位的数字作为字母表的索引取得特定字符,依次进行获得6位字符串
(4)总的md5串可以获得4个6位串,取里面的任意一个就可作为这个长url地址
(5)把数字和字符组合做一定的映射,就可以产生唯一的字符串,如第62个组合就是sssss9,第63个组合就是ssssba,再利用洗牌的算法,把原字符打乱后保存,那么对应位置的组合字符串就会是无序的组合。
(6)把长网址存入数据库,取返回的id,找出对应的字符串,例如返回id为1,那么对应上面的字符串组合就是aaa,同理id为2时,字符串组合为aaa,依次类推,直至到达62种组合后才会出现重复的可能,所以如果用上面的62个字符,任意取6个字符组合成字符串的话,你的数据存量达到500多亿后才会出现重复的可能。
1、URL应保持规范、简单。
创建具有良好描述性、规范、简单的url,有利于用户更方便的记忆和判断网页的内容,也有利于搜索引擎更有效的抓取您的网站;
2、URL尽量短
长URL不仅不美观,用户还很难从中获取额外有用的信息。另一方面,短url还有助于减小页面体积,加快网页打开速度,提升用户体验;
3、减少特殊字符
URL中应该去掉不能被系统自动识别为url的字符,例如:竖线、分号。这样的url在聊天软件中都不方便直接点击进去。另外,建议通过服务器的rewrite来优化url,让url中减少'?'和'&'的出现。
4、URL针对SEO的优化
关于SEO的朋友还可以关注下,在《百度搜索引擎优化指南20》中提到了以下网站设计URL时注意的问题,相关链接:>
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)