最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • 如何使用 GitHub Pages 搭建一个免费的短链服务

    正文概述 掘金(mydev)   2020-12-27   534

    现在很多平台分享出来的链接都使用了一种短链接(Short URL)的技术,例如新浪的 t.cn,Telegram 的 t.me,Twitter 的 t.co

    这些链接的后缀往往非常简短,只有几个随机的字符或者数字。可以设置为自增长,也可以通过 Hash 算法生成,只要唯一即可。然后在服务器的数据库中,通过唯一的随机码,找到对应的网址进行重定向。

    因此,如果我们需要搭建自己的短链接服务,通常都需要有一台独立的服务器或者数据库。不过在 GitHub 上有人提供了一种思路,可以使用 Github Pages 来免费构建自己的短链接服务。

    Step 1

    首先在 GitHub 上新建一个仓库,当做数据库用来存储链接,笔者这里命名为 gh-pages-url-shortener-db。

    如何使用 GitHub Pages 搭建一个免费的短链服务

    Step 2

    Fork 这个 link 仓库,打开 404.html,修改文件里的 GITHUB_ISSUES_LINK 字段,将这个 value 指向自己上一步新建的 gh-pages-url-shortener-db 仓库。

    // 注意将{username}和{dbname}替换为自己的用户名和仓库
    var GITHUB_ISSUES_LINK = "https://api.github.com/repos/{username}/{dbname}/issues/";
    

    Step 3

    最后在 Settings->GitHub Pages->Source 设置里配置一下 GitHub Pages 分支即可。

    如何使用 GitHub Pages 搭建一个免费的短链服务

    现在来测试一下!

    在第一步建立的 gh-pages-url-shortener-db 仓库里开一个 issues,标题就是需要转换的长链接。

    例如我这里使用一个带有中文转译后的链接,这个链接会定位到百度百科的科比·布莱恩特词条。

    如何使用 GitHub Pages 搭建一个免费的短链服务

    现在,通过在浏览器中输入网址 https://mayandev.top/link/1,就可以跳转到上面的百度百科的词条了。

    如何使用 GitHub Pages 搭建一个免费的短链服务

    为了避免邮件打扰,建议关闭此仓库的通知功能。

    如何使用 GitHub Pages 搭建一个免费的短链服务

    觉得手动创建 issues 太麻烦?

    GitHub 提供命令行的 CLI 工具,可以让我们通过终端来操作 issues。

    你也可以通过我编写的命令行工具进行短链转换。

    如何使用 GitHub Pages 搭建一个免费的短链服务

    只需要进行以下的一些设置,即可完成短链接转换的操作。

    # 安装工具
    npm install gh-short-url -g
    # 设置用户名以及域名
    shorten config --database=${repo-name} --user=${username} --pages=${domain}
    # shorten it!
    shorten https://en.wikipedia.org/wiki/Kobe_Bryant#Basketball_legacy/
    

    我将工具开源在了 GitHub 中的 gh-short-url 仓库中,欢迎 star ?!感谢原 Repo 作者提供的灵感。

    How does this Work?

    为什么可以通过 GitHub Pages 实现短链?原 Repo 的作者提到:

    真正的秘密藏在了 404.html 中,感兴趣的读者可以自行阅读。


    起源地下载网 » 如何使用 GitHub Pages 搭建一个免费的短链服务

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元