Un raccourcisseur d'URL auto-hébergé basé sur PHP qui peut être utilisé pour diffuser des URL raccourcies sous votre propre domaine.
Documentation complète
Image Docker
Auto-hébergé
Télécharger
Configurer
Utiliser Shlink
Contribuer
Ce document contient les bases pour démarrer avec Shlink. Si vous souhaitez savoir tout ce que vous pouvez en faire, visitez la documentation consultable complète.
Vous pouvez apprendre à utiliser l'image Docker officielle en lisant la documentation.
L'idée est que vous pouvez simplement générer un conteneur en utilisant l'image et fournir la configuration personnalisée via les variables d'environnement.
Tout d’abord, assurez-vous que l’hôte sur lequel vous allez exécuter shlink remplit ces conditions :
PHP 8.2 ou 8.3
Les prochaines extensions PHP : json, curl, pdo, intl, gd et gmp/bcmath.
L'extension apcu est recommandée si vous ne prévoyez pas d'utiliser RoadRunner.
L'extension XML est requise si vous souhaitez générer des codes QR au format SVG.
les sockets et les extensions bcmath sont requises si vous souhaitez intégrer une instance RabbitMQ.
MySQL, MariaDB, PostgreSQL, MicrosoftSQL ou SQLite.
Vous aurez également besoin de la variante pdo correspondante pour la base de données que vous envisagez d'utiliser : pdo_mysql
, pdo_pgsql
, pdo_sqlsrv
ou pdo_sqlite
.
Pour exécuter Shlink, vous aurez besoin d'une version construite du projet. Il existe deux façons de l'obtenir.
Utiliser un fichier dist
Le moyen le plus simple d’installer shlink consiste à utiliser l’un des packages distribuables pré-regroupés.
Accédez à la dernière version et téléchargez le fichier shlink*_dist.zip
qui correspond à vos besoins. Vous en trouverez un pour chaque version de PHP prise en charge.
Enfin, décompressez le fichier à l'emplacement de votre choix.
Construire à partir de sources
Si, pour une raison quelconque, vous souhaitez créer le projet vous-même, suivez ces étapes :
Après cela, vous aurez un fichier dist dans le répertoire build
, que vous devrez décompresser à l'emplacement de votre choix.
Note
C'est le processus utilisé lors de la publication de nouvelles versions de Shlink. Après avoir balisé la nouvelle version avec git, la version GitHub est automatiquement créée par un workflow GitHub, en y attachant le fichier dist généré.
Clonez le projet avec git ( git clone https://github.com/shlinkio/shlink.git
), ou téléchargez-le en cliquant sur le bouton vert Cloner ou télécharger .
Téléchargez le gestionnaire de packages Composer PHP dans le dossier du projet.
Exécutez ./build.sh 3.0.0
, en remplaçant la version par le numéro de version que vous allez créer (le numéro de version est utilisé dans le cadre du nom du fichier de distribution généré et pour définir la valeur renvoyée lors de l'exécution shlink -V
à partir du ligne de commande).
Quelle que soit la manière dont vous avez construit le projet, vous devez maintenant le configurer en suivant ces étapes :
Si vous comptez utiliser MySQL, MariaDB, PostgreSQL ou Microsoft SQL Server, créez une base de données vide avec le nom de votre choix.
Accordez de manière récursive des autorisations d’écriture sur le répertoire data
. Shlink l'utilise pour mettre en cache certaines informations.
Configurez l'application en exécutant le script vendor/bin/shlink-installer install
. Il s'agit d'un outil en ligne de commande qui vous guidera tout au long du processus d'installation. Tenez compte du fait que cet outil doit être exécuté directement sur le serveur sur lequel vous envisagez d'héberger Shlink. Ne l'exécutez pas avant de l'avoir téléchargé/déplacé ici.
Générez votre première clé API en exécutant bin/cli api-key:generate
. Vous aurez besoin de la clé pour interagir avec l'API de Shlink.
Une fois Shlink installé, il existe deux manières principales d’interagir avec lui :
La ligne de commande : Essayez d'exécuter bin/cli
pour voir toutes les commandes disponibles.
Tous peuvent être exécutés avec l'indicateur --help
/ -h
afin de voir comment les utiliser et toutes les options disponibles.
C'est probablement une bonne idée de créer un lien symbolique entre le point d'entrée CLI ( bin/cli
) quelque part sur votre chemin, afin de pouvoir exécuter shlink à partir de n'importe quel répertoire.
L'API REST : la documentation complète sur la façon d'utiliser l'API peut être trouvée ici, et un bac à sable qui documente également chaque point de terminaison peut être trouvé sur le portail API Spec.
Cependant, vous ne souhaitez probablement pas consommer vous-même l'API brute. C'est pourquoi un joli client Web est fourni et peut être utilisé directement depuis https://app.shlink.io ou hébergé par vous-même.
L'API et la CLI vous permettent d'effectuer essentiellement les mêmes opérations, à l'exception de la gestion des clés API, qui peut être effectuée uniquement à partir de l'interface de ligne de commande.
Si vous cherchez à savoir comment exécuter le projet en mode développement ou comment apporter des contributions, lisez le doc CONTRIBUTING.
Ce produit comprend des données GeoLite2 créées par MaxMind, disponibles sur https://www.maxmind.com