YOURLS是一组 PHP 脚本,允许您在服务器上运行您自己的 URL 缩短器。您将完全控制您的数据、详细统计数据、分析、插件等。它是免费且开源的。

一、安装

Docker Compose 如下:

version: "3.5"

services:
  yourls:
    image: yourls
    container_name: yourls
    restart: always
    ports:
      - "9012:80"
    environment:
      YOURLS_DB_HOST: mysql
      YOURLS_DB_USER: yourls
      YOURLS_DB_PASS: password
      YOURLS_DB_NAME: yourls
      YOURLS_USER: username
      YOURLS_PASS: password
      YOURLS_SITE: http://192.168.1.4:9012
    volumes:
      - ./html/:/var/www/html
    depends_on:
      - mysql

  mysql:
    container_name: yourls-db
    image: mysql:8.0
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=password
      - MYSQL_DATABASE=yourls
      - MYSQL_USER=yourls
      - MYSQL_PASSWORD=password  # 修改为自己的密码
      - MYSQL_BIND_ADDRESS=0.0.0.0  # 添加此行,允许外部连接
    volumes:
      - ./db:/var/lib/mysql

二、运行

  • 在浏览器中输入 http://群晖IP:8027 会看到错误的显示

  • 实际上应该是要访问 http://群晖IP:8027/admin

  • 点 Install YOURLS 开始安装

  • YOURLS Administration Page 跳转到登录页面

  • 输入前面设置的 YOURLS_USER 和 YOURLS_PASS 的值

compose 内有设置

  • 登录成功后的主界面

  • 以 https://yanghaixiong.com 为例

  • 默认生成的 url 够短的

    当然实际应用中,还需要内网穿透到公网,url 长度主要取决于你的域名的长短了

三、插件

官方在 GitHub 上总结了非常多的插件,大约有 200 多个,可以根据自己的需求找到想使用的插件。

官方插件地址:https://github.com/YOURLS/awesome

进入 Manage Plugins,默认安装了 6 个插件,但实际上并没有激活

使用插件的基本流程如下:

  • 将插件拷贝到 /html/user/plugins/插件名/ 目录下;
  • 然后在管理页面激活插件;

所有的插件都可以使用这样的方式安装启用,有兴趣可以试试

四、使用

1. 中文修改

YOURLS默认是英文界面,不方便操作,看到有网友提供了汉化,访问 YOURLS-zh_CN 下载汉化包,并解压到user/languages目录,然后修改user/config.php。

#语言包放到languages
[root@aliyun-hz languages]# ll
total 68
-rw-r--r-- 1 www www   210 Apr 23  2017 index.html
-rw-r--r-- 1 www www    51 Mar 24  2013 README.md
-rw-r--r-- 1 www www 22123 Mar 24  2013 zh_CN.mo
-rw-r--r-- 1 www www 32783 Mar 24  2013 zh_CN.po
#修改配置文件启用中文
vi user/config.php
#启用中文
define( 'YOURLS_LANG', 'zh_CN' );

2. 同一条链接对应多个短链

在 /user/config.php,下面一行,把这个改成true就可以了~

3. 换主题

以 Sleeky主题为例,Sleeky 主题包括前端和后台两个部分。下载解压 Sleeky 主题后可以看到两个文件夹 sleeky-frontend 和 sleeky-backend ,前端只需要将 sleeky-frontend 中的文件复制到yourls网站根目录(/html)即可,后端则需要将 sleeky-backend 文件夹放到yourls目录下的 user/plugins 中,然后在后台管理(yourdomain.com/admin/plugins.php)中启动主题插件即可看到效果。

参考