头痛的问题
- 网站内大量的三方网站链接,经常会有失效的情况,需要自动判断是否已失效。例如阿里云大使链接和京东、淘宝链接就经常发生变更或者失效。
- 三方链接存在于多个网页/代码中,一旦变更,就需要多处更改。如果能统一管理就方便多了,一处修改,多处生效。
- 三方链接的点击情况统计。目前用的百度统计事件分析,无法满足上述需求。
所以,我决定写一套短链接服务,来解决这个问题。
功能需求
- 短链接生成
- 定时任务:自动遍历所有链接,判断是否已失效
- 关键词检测:设置关键词,用于判断网页内是否包含此关键词,以判断是否失效
- 转化排行榜:转化效果评估
链接形式
知乎的做法是新的二级域:
<a href="https://link.zhihu.com/?target=https%3A//tower.im" class=" wrap external" target="_blank" rel="nofollow noreferrer" data-za-detail-view-id="1043">tower</a>
我觉得不用这么复杂,完全可以用 www 域名下的链接,然后 302 跳转到三方网站。例如,
www.sunzhongwei.com/go/s/短链码
用 302 的原因是,这个链接随时会发生变化。
数据库设计
- id: 自增 ID
- slug:短链接,最长六位,支持大小写字母和数字。唯一索引。可以手动指定,也可以自动分配。
- target_url: 目标链接,即三方链接。
- counter: 计数器。统计点击次数。
- keyword: 页面内必须包含的关键词,检测网页是否失效用。
- created_at: 创建日期
- updated_at: 更新日期。更新计数器,不更新此时间。
短链接生成算法
https://stackoverflow.com/questions/22892120/how-to-generate-a-random-string-of-a-fixed-length-in-go
管理后台
尝试一下 Golang 做管理后台。
微信关注我哦 👍
我是来自山东烟台的一名开发者,有感兴趣的话题,或者软件开发需求,欢迎加微信 zhongwei 聊聊, 查看更多联系方式