YOURLS
自托管短链接服务,完全控制数据、详细统计,支持插件扩展。
智能下载
前往项目主页
该项目暂未提供安装包,请直接访问源代码仓库
自己搭建短链接服务,完全掌控数据和统计。
核心功能
- 完全自托管:安装在自己的服务器上,数据隐私无忧
- 详细点击统计:查看点击次数、来源、地理位置等
- 自定义关键词:创建个性化短链接(如 yourls.com/offer)
- 强大插件系统:社区提供众多插件,扩展功能丰富
- 开放API:支持程序化创建和管理短链接
避坑指南
- •需要 PHP 7.4 及以上版本,并开启 PDO_MYSQL 扩展;2. 推荐使用 HTTPS 以保证数据传输安全;3. 默认安装后建议修改后台路径(如 /admin)并设置强密码;4. 如果计划公开使用,需注意反垃圾机制;5. 生产环境推荐使用 Nginx/Apache 并启用 URL 重写。
适用场景
- 品牌营销:使用自己的域名生成短链接,提升品牌形象
- 社交媒体推广:缩短长链接,便于分享和追踪效果
- 链接管理:统一管理所有短链接,查看点击数据
- 学术引用:为论文或资料创建持久稳定的短链接
详细介绍
YOURLS 是一款开源免费的 PHP 应用,让你在自己的服务器上搭建专属的短链接服务。它完全掌控你的数据,提供详细的点击统计、自定义关键词、API 接口和强大的插件扩展系统。与商业短链接服务不同,你拥有全部数据,可自由定制。非常适合品牌营销、链接管理和需要隐私保护的场景。
常见问题与排障 (2)
故障排除为什么 YOURLS 管理后台列表在使用德语 (de_DE) 或其他以点号作为千位分隔符的区域设置时,点击次数排序会出错?
在 YOURLS 1.10.6 中,点击量列显示按本地化格式化的数字(例如在 de_DE 中显示为 1.258),但 jQuery tablesorter 使用 usNumberFormat: true 解析这些数字,将 1.258 读取为 1.258 而不是 1258。这会破坏任何使用 . 作为千位分隔符的语言环境(de_DE、nl_NL、it_IT、pt_BR)中的排序功能。此问题已在上游 PR #4197 中修复(请更新 YOURLS)。针对 1.10.6 的变通方法:(1) 添加一个小型插件,在 html_head 钩子上输出 jQuery.tablesorter.defaults.usNumberFormat = false;。(2) 或者修改 js/tablesorte.js,使其只从点击量列中提取数字:textExtraction: { 4: function(node){ return $(node).text().replace(/\D/g, ''); } }。(3) 或者,将原始数字作为 data-text 属性添加到点击量单元格上,tablesorter 默认会读取该属性。
故障排除如何修复 YOURLS 管理后台搜索在 MariaDB/PDO 环境下出现的致命错误 "COLLATION 'utf8mb4_unicode_ci' is not valid for CHARACTER SET 'binary'"?
此问题发生在 YOURLS 1.10.4 中:当搜索 all 或 title 时,MariaDB 会话会将绑定的 :search 参数视为 binary,这通常是由于 init_connect=SET NAMES binary 覆盖了 DSN 字符集所导致的。
1. 验证连接设置:
SHOW VARIABLES LIKE 'init_connect';
SHOW VARIABLES LIKE 'character_set%';
2. 强制 PDO 连接使用 utf8mb4:
$pdo = new PDO(
'mysql:host=localhost;dbname=YOUR_DB;charset=utf8mb4',
'YOUR_USER',
'YOUR_PASS',
[
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES utf8mb4",
]
);或者,在建立连接之后运行:
$pdo->query('SET NAMES utf8mb4');如果你可以控制服务器,请移除或更改
init_connect=SET NAMES binary。
3. 作为代码层面的变通方法,可以在标题搜索 SQL 中移除绑定占位符上的排序规则:
`title` COLLATE utf8mb4_unicode_ci LIKE (:search)或者,显式转换该参数:
`title` COLLATE utf8mb4_unicode_ci
LIKE CONVERT(:search USING utf8mb4) COLLATE utf8mb4_unicode_ci当连接字符集为
binary 时,不要使用 (:search) COLLATE utf8mb4_unicode_ci。对核心文件的补丁可能会在升级时被覆盖,因此更改连接字符集是首选的变通方法。标签
快速上手
安装软件
双击下载的安装程序,按提示完成安装
步骤1:下载 YOURLS 源码并上传到 Web 服务器(需 PHP 7.4+ 和 MySQL/MariaDB)
步骤2:在服务器上创建数据库和用户,并配置 user/config-docker.php 或 user/config.php 中的数据库连接信息
步骤3:在浏览器中访问你的域名,运行安装向导,设置管理员账号密码
- 步骤1:下载 YOURLS 源码并上传到 Web 服务器(需 PHP 7.4+ 和 MySQL/MariaDB)
- 步骤2:在服务器上创建数据库和用户,并配置 user/config-docker.php 或 user/config.php 中的数据库连接信息
- 步骤3:在浏览器中访问你的域名,运行安装向导,设置管理员账号密码
暂未获取到校验码
该项目暂未在 GitHub Release 页面提供 SHA-256 校验码
SHA256 校验码
暂无校验码
建议从 GitHub Releases 页面直接下载,并自行核对文件完整性
本平台所有 SHA-256 校验码均提取自项目在 GitHub 官方 Release 页面发布的文件,未做任何修改。你可以通过 GitHub Releases 页面自行验证。
开源透明
查看 GitHub 源码卸载说明
删除 YOURLS 安装目录下的所有文件,同时删除对应的 MySQL 数据库和数据表。注意备份任何自定义配置和插件。
无额外依赖
下载后即可直接使用,无需安装其他运行环境
遇到问题?查看下方 FAQ
2 FAQs