使用.net自建短链接(短网址)工具

时间:2024-04-14 12:42:17

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

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


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

        例如:我的阿里云幸运券连接http://wzfw.ltd/qjyl 。就是由“http://” + “ wzfw.ltd” + "qjyl"三个部分组成。其中http为协议,也可以是https。wzfw.ltd为域名,我手里暂时没有更短的限制域名,就暂时使用这个了。最关键的是最后一部分“qjyl”,我暂时称作他为code。其实这个code就是一个数据库里的唯一标识列


  • 短连接用途

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


  • 短连接原理

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

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

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


  • 自建短连接站点

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

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

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

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

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

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



推荐大家使用阿里云的ECS,购买步骤如下

【Step1】:领取我的阿里云幸运券(http://wzfw.ltd/qjyl 

【Step2】:新用户199元一年特价ECS,1核2G(http://wzfw.ltd/ecs199 

新用户和老用户另外三种配置特价机型可选(http://wzfw.ltd/ecs330),价目如下:

1核1G=330一年,660两年,800三年

1核2G=660一年,960两年,1320三年

2核4G=825一年,1260两年1650三年

【Step3】:抽奖

抽奖地址1:(http://wzfw.ltd/jiang)。抽实物,幸运券下单大于1000元ecs即可目前奖品中,最高奖励ipad,目前移动电源概率很高。

抽奖地址2:(http://wzfw.ltd/jiang2)。抽代金券,幸运券下单大于0元即可

抽奖地址3:(http://wzfw.ltd/jiang3)。抽积分


广告结束,欢迎回来!



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

1,添加路由:

使用.net自建短链接(短网址)工具

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

使用.net自建短链接(短网址)工具

使用.net自建短链接(短网址)工具

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

使用.net自建短链接(短网址)工具



        文章到此结束,相信到了这一步,不需要我分享源代码,具备开发能力的你也可以制作出自己的短连接工具网站了。目前我的短连接站点虽然简陋,但是已经足以实现我统计推广的目的。文中不可避免的出现了我的推广广告,还请各位多多包涵!在此感谢您的阅读和支持!


原文链接 :https://www.opengps.cn/Blog/View.aspx?id=32   ,更新以此为准