如何自己搭建一个短网址生成系统?

       mrw短网址,为您提供专业的短网址服务

  短链接大家都不陌生,例如新浪的 t.cn 、京东的 3.cn 、淘宝的 tb.cn 、最受欢迎的mrw.so 等等。都已经是家喻户晓的短链接域名。不知道有多少人像我一样,对短连接原理好奇而且尝试自建了呢?

  今天发布这个文章的目的,就在于分享一下我的自建短链接过程。首先解释下短连接的实现原理,相信很多读者,在看完原理之后,已经有能力自己编写这样一个工具出来。

  短连接构成:协议+域名+参数

  例如:我的自己制作的短链接 http://suo.nz/baidu 。它是由“http://” + “ suo.nz” + "baidu"三个部分组成。其中http为协议,也可以是https协议。suo.nz为域名,我手里暂时没有更短的限制域名,就暂时使用这个了。最关键的是最后一部分“qjyl”,我暂时称作他为code。其实这个code就是一个数据库里的唯一标识列,大部分短链接工具,这个标识列是要区分大小写的

  短连接用途

  最简单的用途就是他的名字直译“短”的“链接”,可以把长长的一串链接缩短成为几个简单的字符。但今天我要说的用途不是缩短,而是统计用量,关于这一点待会说到实现原理时候会重点解释。另外,偶然发现还有一个作用,就是突破域名屏蔽,关于这一功能点,纯属巧合。当下微信里传播的很多假红包假活动网站,都是类似于短连接这种多级跳跃方式突破的域名封锁。

  短连接原理

  创建一张数据库表,仅需要有2列即可:code列和url列。

  code列也就是标识列,建议直接设置为非自增主键。用于存储短链接参数代码,也就是短链接里的code。url列用于存储要跳转的原始url。此处我是出于自用目的,因此不做额外限制。

  短连接原理非常简单,就是用户访问短连接地址,到达我们的短连接网站,然后网站通过短链接里的code,查询数据库得到原始url,然后让网页跳转到原始url即可。文章标题所说的链接推广分析功能,就是在这个过程中,记录访客的某些信息,例如:访问时间、访问的短链接、访客的IP、访客的UserAgent信息等。基于这些信息,配合推广方式,就可以辅助判断出什么时间,什么范围,什么人群的推广更有曝光效果。

  自建短链接站点

  自建短链接需要一下条件:

  域名。尽量短,最好是连同空间一同完成备案

  空间或者服务器。国内用,建议选择国内服务商。本文选用的是阿里云ECS。

  网站源代码。.net 、java、php等网站开发语言均可。

  数据库。不要求是否是sql,只要能完成键值对对照关系即可。

  由于短链接是唯一中间连接,因此需要购买的空间或者服务器尽可能稳定,在这里,我插播一点广告信息,欢迎大家参考选购,算做是对本文的支持。

  实现代码:以.net为例,开发工具VS2015,采用 MVC5.0 建站,代码直接上图:

  1,添加路由:

  

码人网mrw.so缩短网址文章图片

 

  2,记录日志,代码和日志截图

  

码人网mrw.so缩短网址文章图片

 

  

 

 

  3, 短网址功能实现,为便于展示,这里使用测试代码,实际代码替换为数据库查询即可(截图中,红框2内容)

  

码人网mrw.so缩短网址文章图片

 

  文章到此结束,相信到了这一步,不需要我分享源代码,具备开发能力的你也可以制作出自己的短链接工具网站了。目前我的短链接站点虽然简陋,但是已经足以实现我统计推广的目的。