URL Shorteners

Theory

  1. 当我们在浏览器里输入 http://abc.com/RlB2d2 时,DNS首先解析获得 http://abc.com 的 IP 地址 111.125.123.72;
  2. 当 DNS 获得 IP 地址以后,会向这个地址发送 HTTP GET 请求,查询短码 RlB2d2 对应的长 URL;
  3. 请求通过 HTTP 301 转到对应的长 URL https://m.domain.com。

301 与 302 的区别

301 是永久重定向,302 是临时重定向。短地址一经生成就不会变化,所以用 301 是符合 http 语义的,同时对服务器压力也会有一定减少。但是如果使用了 301,我们就无法统计到短地址被点击的次数了。而这个点击次数是一个非常有意思的大数据分析数据源。能够分析出的东西非常非常多。所以选择302虽然会增加服务器压力,但是我想是一个更好的选择。


URL Shortener

YOURLS

How to add plugin?

default plugin directory: /var/www/html/user/plugins

Example: https://github.com/YOURLS/random-keywords

短地址生成书序

短地址默认是是按照顺序生成,从1开始,有可能我们想不按照这样顺序,可以推荐用时间戳来生成

只需要修改 includes/functions.php 272行附近

1
将 $id = yourls_get_next_decimal(); 改为 $id = time();

Reference