使用YOURLS搭建自己的短网址服务

1.准备工作

1.1既然是短网址服务,首先得有一个域名,越短的越好。

例如本人用的是ser5.cn,这样一个很长的网址可以缩短成 ser5.cn/xxx 这种短形式。购买域名的步骤这里不再赘述,自行搜索。然后将域名的@记录解析到你的服务器。

1.2YOURLS 依赖于PHP和Mysql,因此需要先安装PHP和Mysql。

这里推荐门槛比较的方式,就是利用宝塔面板提供的图形化界面操作即可,不涉及代码。

image.png

2.部署YOURLS

2.1首先至项目地址下载YOURLS压缩包至电脑桌面。

这里提供一个我已经下载好的版本(YOURLS-1.9.2),下载好以后在桌面解压。

2.2配置YOURLS

进入user文件夹下,复制config-sample.php文件,并重命名为:config.php。

打开并根据自己的实际情况编辑config.php文件:

define( 'YOURLS_DB_USER', '填写你的数据库用户名' );

define( 'YOURLS_DB_PASS', '填写数据库密码' );

define( 'YOURLS_DB_NAME', '填写数据库名字' );

# 这两行基本不用改
define( 'YOURLS_DB_HOST', 'localhost' );

define( 'YOURLS_DB_PREFIX', 'yourls_' );

# 填写你的域名,不要加www形式
define( 'YOURLS_SITE', 'http://你的域名' );

# 填写时区,国内是8
define( 'YOURLS_HOURS_OFFSET', 8 );

# 设置为中文
define( 'YOURLS_LANG', 'zh_CN' );

/** Allow multiple short URLs for a same long URL
 ** Set to true to have only one pair of shortURL/longURL (default YOURLS behavior)
 ** Set to false to allow multiple short URLs pointing to the same long URL (bit.ly behavior) */
define( 'YOURLS_UNIQUE_URLS', false );

# 设置私有权限
define( 'YOURLS_PRIVATE', true );


define( 'YOURLS_COOKIEKEY', '从http://yourls.org/cookie获取值' );

# 后台登录用户名和密码,一行设置一个,请务必修改
$yourls_user_passwords = array(
	'用户名1' => '密码1',
	// 'username2' => 'password2',
	// You can have one or more 'login'=>'password' lines
	);

/** Debug mode to output some internal information
 ** Default is false for live site. Enable when coding or before submitting a new issue */
define( 'YOURLS_DEBUG', false );

# 网址中允许大些字母填62,否则填36
define( 'YOURLS_URL_CONVERT', 62 );
/*
 * 36: generates all lowercase keywords (ie: 13jkm)
 * 62: generates mixed case keywords (ie: 13jKm or 13JKm)
 * Stick to one setting. It's best not to change after you've started creating links.
 */

# 保留的关键字,可自己添加
$yourls_reserved_URL = array(
	'porn', 'faggot', 'sex', 'nigger', 'fuck', 'cunt', 'dick',
);

2.3上传配置好的YOURLS文件至宝塔

前文提到本次部署使用的宝塔面板,在宝塔面板“网站”菜单栏下:PHP项目-添加站点,输入之前准备好的短连接域名,并将我们编辑好的YOURLS文件打包上传至该域名的根目录下。

2.4打开短链接网址并安装

完成以上配置后访问 https://example.com/admin 完成初安装,输入用户名和密码即可进行生成短链接的操作。

2.5插件服务

Github页面上有很多实用插件,参照每个插件的安装方法进行安装。

2.6外部应用调用API

YOURLS允许使用老方法进行API调用,即使用username和password参数。 如果你担心这有潜在的风险,你也可以不使用你的用户名或密码进行API调用,而使用一个 secret signature token。

登录yourls后,首页点击“工具”按钮,进入界面后找到“安全的API调用”下的:你的密钥签名令牌(secret signature token):XXXXXXXX (请保存好,勿泄露)。其中XXXXXXX即为调用的token。

这里给出狗子应用调用的格式:https://m.ser5.cn/yourls-api.php?signature=XXXXXXXX&action=shorturl&url={0} &format=simple

image-ebfi.png

替换为自己的token后填入狗子即可。