Shlink
A PHP-based, self-hosted URL shortener that serves shortened links under your own domain, with a REST API and official Docker image.
Shlink is a PHP-based self-hosted URL shortener that can be used to serve shortened URLs under your own domain. It requires PHP 8.4 or 8.5 with extensions including json, curl, pdo, intl, gd, and gmp or bcmath, and a database such as MySQL, MariaDB, PostgreSQL, Microsoft SQL Server, or SQLite.
It can be run from an official Docker image configured through environment variables, or installed from a pre-bundled distributable package matching the host's PHP version, downloaded and decompressed in place. Building from source instead clones the repository, downloads the Composer package manager into the project folder, and runs a build script that produces the same kind of distributable package. Full documentation covers everything the shortener can do beyond this basic setup.