前两天偶然在 GitHub 发现一个挺有意思的项目,可以不依赖自己的服务器、数据库来构建一个短链接服务。自己尝试了一下,还挺简单的。这里记录一下自己的构建流程,感兴趣的小伙伴可以自己尝试一下。
username.github.io
)。不过我是用了自己注册的域名:blog.johan.zone首先,你需要获取这个服务的源代码,你可以直接 fork 这个源码仓库,当然也欢迎 fork 我的代码仓库。
然后,克隆自己的仓库到本地(当然,你也可以直接在 GitHub 网页上操作),修改404.html
文件的GITHUB_ISSUES_LINK
字段,指向自己的url_shortener_db
仓库,这个仓库的issues
就是作为存储你的链接的数据库:
var GITHUB_ISSUES_LINK =
"https://api.github.com/repos/username/repo-name/issues/";
注意把上面的username
repo-name
替换为自己的用户名及仓库名。还有,最后的/
不要漏掉,这是获取链接的关键
接下来就是配置 Github Pages 了,这部分也很简单。
点击仓库的Settings
选项,找到其中的GitHub Pages
部分,然后配置Source
中的分支:
下面的部分根据自己需要选择:
CNAME
文件404.html
文件中的var PATH_SEGMENTS_TO_SKIP = 0;
改为var PATH_SEGMENTS_TO_SKIP = 1;
username.github.io
,注意替换username
为自己的 GitHub 用户名Save
,刷新页面,会显示下面的内容:CNAME
文件中的域名更改为你配置好的域名在你开始作为数据库的 GitHub 仓库创建一个 issue,标题就是你需要缩短的链接,其他什么都不需要做,直接 Submit 就行了。
等待一会儿,然后在浏览器查询链接https://<your-domain>/<issue-no>
。例如:https://tldr.plus/2
,点击这个链接会跳转到我的博客。其中的tldr.plus
是我的域名,1
代表 issue 的楼层数。
如果大家觉得麻烦,也可以使用我搭建的服务,你可以点击这里提供链接。
有人在这里给了一个比较好的解释,大家可以参考一下。