免费开源Github Page实现短链接方案

以前公司有一个需求,将推广用的长链接转化为短链接,再通过营销短信发送给客户。虽然有很多的第三方短链的生成工具,但为了安全还是自建一个。以前用过开源的YOURLS,是基于PHP的开源方案。 https://github.com/YOURLS/YOURLS 。

今天在网上发现一个更加简单的方案就是,gh-pages-url-shortener,一款完全使用 GitHub Pages 就可搭建的最小型的短链接生成服务。

开源地址: https://github.com/nelsontky/gh-pages-url-shortener

Github开源的短链接:https://nlsn.cf/1

不需要自己有服务器,通过自有域名解析到Github Page,在指定的issue上添加目标地址即可实现,链接跳转。

github-gp-dlj

搭建准备

有个自有域名,例如星哥的 d.xggs.net。

github账号:笔者的funet8

安装步骤

Fork仓库

打开https://nlsn.cf/1页面,点击fork,将原来的仓库拷贝到自己的账号下。

image-20220307160441365

image-20220307160538052

获取到仓库:https://github.com/{你的用户名}/gh-pages-url-shortener, 我的仓库是 https://github.com/funet8/gh-pages-url-shortener

配置GitHub Pages

github pages 可以做什么?
github pages 可以放一些纯静态的网站,比如你的项目介绍等.当然,也可以使用一些静态博客工具在本地通过markdown写博客,生成静态页面后发布到github pages

image-20220307163103417

image-20220307163121048

新建仓库存放当做数据库

GitHub 上新建一个仓库,当做数据库用来存储链接,笔者这里命名为 gh-pages-url-shortener-db,得到 https://github.com/funet8/gh-pages-url-shortener-db

image-20220307161348791

修改仓库配置

修改CNAME

把fork的仓库https://github.com/funet8/gh-pages-url-shortener克隆到本地,修改文件之后提交到github。

如果你有自己的私有域名,可以设置对应的 CNAME(这跟其他 GitHub Pages 设置一样)

CNAME文件里的改成私有域名
d.xgss.net

修改404.html的接口地址

修改仓库中的404.html,将GITHUB_ISSUES_LINK改成自己的地址, 地址根据实际情况填写。

var GITHUB_ISSUES_LINK =
        "https://api.github.com/repos/funet8/gh-pages-url-shortener-db/issues/";

域名解析

我的域名是在阿里云上购买的,将域名CNAME解析到

d.xgss.net 解析到 funet8.github.io

image-20220307162851318

访问: http://d.xgss.net/

再在 https://github.com/funet8/gh-pages-url-shortener-db/issues 提交一个issue,在里面就会有一个id号

image-20220307164145678

image-20220307164406837

访问 http://d.xgss.net/1 即可跳转到你提交的地址上,以后就可以在github仓库中的issues的标题添加目标地址,就可以实现短链接跳转了。

安全性

由于目标地址是存储在issues上,避免有好事者乱提交issuse用,github issues 怎么禁止其他人提交,则将我的 gh-pages-url-shortener-db的issues设置为私有。

设置为私有,就所有的url的地址都是404了,只能手动定时清理,避免出现麻烦。

image-20220307165642994

没有自有域名

如果没有自有域名,可以用github的域名实验,但这个就是长了: {github账号名}.github.io/{仓库名}

笔者的地址: http://funet8.github.io/gh-pages-url-shortener/1

总结

nlsn.cf/1应该链接到这个 repo。

要添加新的短链接,请将标题作为您要缩短的链接(包括http(s)://)的问题添加到 https://github.com/nelsontky/gh-pages-url-shortener-db/issues。

新创建的短网址可以通过以下方式访问nlsn.cf/{issue_number}
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
该设计是一个以仓鼠玩偶为原型的语音机器人项目,具备语音交互能力,可与不同品牌的ZigBee智能家居产品互联互通。项目希望通过开源方式,集合大家的力量,一起打造一个开放自由的智能家居网络,让大家可以挑选喜欢的设备进入个人生活。 实物截图: 具有如下特点: 语音交互。 Apple有Siri,Google有Goolge Now,你说“OK glass”可以与谷歌眼镜交谈,你说“Alexa”可以让亚马逊Echo播放音乐。 在OpenHamtaro,你念叨下“仓鼠管家”,就可以操作智能家居设备了。 ZigBee互联互通。 在智能家居的应用领域,ZigBee在互联互通、网络接入数量等方面都比WiFi要更有优势。虽然ZigBee联盟已经公布了有1072款的认证产品,但似乎离我们还比较远。 希望通过这个OpenHamtaro项目,逐个接入各个品牌的ZigBeeHomeAutomation智能家居单品,比如飞利浦的HUE灯,南京物联的插座,施耐德的开关等等。甚至给小米的ZigBee智能家居套装重写满足ZHA协议的固件,用于接入标准ZHA网络。(如果绿米的工程师看到这,希望官方能发布一个标准ZHA固件,实现与其他ZHA产品的互联互通。) 全球领先的GreenPower协议实现。 这两年免电池开关很受欢迎,Enocean联盟、以及国内的领普等专做无源免电池设备的厂商都大火。其实早在2012年ZigBee协议中就加入对无源免电池设备的兼容,但是技术上一直攻克不下来。最近从上游供应商那传来喜讯,有了工程样机,期待能在这个项目中实现这个技术的接入。 总的来说,OpenHamtaro要做一个开放包容且有意思的智能家居网关,这也是这个“产品”的差异化特点。 功能演示视频严肃演示版视频(锤子T1闪亮出境): https://v.qq.com/x/page/z0324xe9wtm.html 语音调戏版视频(仓鼠管家抽风特写): https://v.qq.com/x/page/p0324kjqakq.html 此项目在github开源,欢迎Fork:https://github.com/twowinter/OpenHamtaro 如果你对ZigBee技术有兴趣,对这个开源项目有兴趣,欢迎与我联系。我的微信公众号是“twowinter”,不定期做些物联网技术以及心得分享。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值