0x01 前言

我这个网站的地址包含中文,在分享的时候显得很不方便。在分享的时候会出现两种情况,一种是链接被编码,例如这篇文章的地址:

另一种是链接不能识别,我发现包括微信在内的很多分享软件都不支持中文地址:

例如上面这行链接,仅识别https://ngx.hk/2016/11/27/,而后面的“使用yourls搭建短链接服务.html”却被认为是这正文。

我倾向于使用中文链接,因为在浏览器中一眼就能识别页面的标题:

1480226766

还好我还有另一个域名:c4.hk。为何不将它作为短链接来使用呢?

0x02 准备

YOURLS是基于PHP的一款开源软件,所以我要准备nginx、apache、PHP、mariadb。

首先安装配置nginx,你可以参考以下文章进行安装:

nginx 1.9.10 编译安装 with ngx_lua_waf & pagespeed

其实你仅适用nginx或者apache作为前端服务器也是可以的,因为我的后端是分布式的,所以还需要安装apache,可以参考以下文章:

编译安装apache2 & mod_pagespeed

我使用PHP7,我暂时还没有写关于PHP的文章,所以你需要到其他地方寻找相关信息。

最后是获取YOURLS,你可以在GitHub找到它的源码:

YOURLS

0x03 配置环境

首先来配置nginx:

以上是我的nginx配置文件,在最后的admin location我设为禁止访问,因为我只需要通过API访问就好了,所以禁用admin文件夹的访问权限。同时通过iptables控制api文件的访问,即可最大程度地保护短链接系统。

以下是apache的配置,因为apache只作为后端,所以没有做过多配置:

以下是php-fpm的配置信息:

0x04 配置YOURLS

先下载YOURLS:

然后将YOURLS复制到正确的位置:

配置YOURLS

0x05 结语

一切顺利的话,通过 https://[your domain/ip]/admin 就能访问并开始使用你的短链接系统啦。