Erstellen Sie Ihren eigenen URL-Shortener mit YOURLS

Was Sie erstellen werden

In diesem Tutorial zeige ich Ihnen, wie Sie Ihren eigenen Open Source-PHP-basierten URL-Shortener namens YOURLS installieren.

Der Nutzen von URL-Verkürzungen

Kurz bevor Twitter mit dem t.co-URL-Shortener alle Links kodiert hatte, erreichte die URL-Verkürzung ihren Nutzen. Bis zu diesem Zeitpunkt haben URL-Verkürzer dabei geholfen, mehrere Links zu twittern, ohne ihre 140 Zeichen zu verwenden. Heute nimmt jeder Link in einem Tweet unabhängig von der Länge eine festgelegte Anzahl von Zeichen in Anspruch. Die Verwendung eines eigenen Link-Shortener ist jetzt weniger wichtig. Damals war Bit.ly eine beliebte Wahl.

Die Verwendung von Link-Shorteners von Drittanbietern bietet jedoch immer noch Vorteile. Google zeigt Ihnen beispielsweise Statistiken und Datenverkehr an und generiert sogar einen QR-Code, um den Datenverkehr zu Ihrem Link zu leiten:

Wenn Sie ein verbessertes statistisches Tracking wünschen, kann es sehr nützlich sein, einen eigenen URL-Shortener auszuführen. Ich wollte zum Beispiel besser nachverfolgen, welche meiner Blogeinträge den Empfehlungsverkehr zu bestimmten Partnern führten. Dafür brauchte ich meine eigene Lösung.

Nachteile des Hosting Ihres eigenen URL-Shortener

Das Hosting Ihres eigenen URL-Shortenerers hat einige Nachteile:

  1. Sie sind stets dafür verantwortlich, den Dienst aufrecht zu erhalten und zu betreiben, sodass die bisherigen Links weiterhin ordnungsgemäß weitergeleitet werden.
  2. Wenn Ihr Server ausfällt oder eine Zeitüberschreitung eintritt, werden Ihre Links unterbrochen.
  3. Wenn Social-Media- oder Web-Traffic für eine Verknüpfungs-URL zu Spitzenzeiten kommt, wird Ihr Server stark auf Anfragen zu Datenverkehr reagieren.
  4. Wenn Sie den Dienst der Öffentlichkeit überlassen - was ich nicht empfehlen kann - besteht die Möglichkeit, dass Spammer und Hacker Ihren Dienst missbrauchen.
  5. Es gibt Kosten, wenn eine Domain Ihren Shortener ausführen soll, z. eine dedizierte .ly-Domain (optional, da Sie natürlich eine vorhandene Sub-Domain verwenden können).

Open Source oder selber machen

Ich war anfangs versucht, meine eigene Lösung zu schreiben. Ein wenig Suche ergab jedoch YOURLS. YOURLS ist ein PHP-basierter URL-Verkürzungsservice mit dezentem statistischen Tracking und einer Vielzahl von Plugins. Für dieses Tutorial habe ich beschlossen, über die Verwendung von YOURLS zu schreiben, anstatt von Grund auf neu zu bauen.

Übrigens, wenn Sie nach einer kurzen Domäne suchen, verwenden Sie Domainr, um nützliche Domänen mit Erweiterungen aus zwei Buchstaben zu finden.

Installieren von YOURLS

Konfigurieren Sie Ihren Server

Ich arbeite bei Digital Ocean mit YOURLS, da es kostengünstig ist und schnelle SSD-Laufwerke für das Hosting anbietet, aber jeder LAMP-basierte Server oder Cloud-Hosting-Anbieter reicht aus. Hier finden Sie meine visuelle Anleitung zur Installation einer LAMP-Instanz bei Digital Ocean.

Sobald eine Serverinstanz ausgeführt wird, können Sie den Code für YOURLS hier herunterladen oder aus dem öffentlichen Git-Archiv klonen.

Code installieren

Erstellen Sie ein Verzeichnis, laden Sie den Code herunter und entpacken Sie ihn:

mkdir / var / www / yourls cd / var / www / yourls git clone https://github.com/YOURLS/YOURLS/archive/1.7.tar.gz tar -zxvf 1.7.tar.gz mv YOURLS-1.7 / yourls 

Erstellen Sie eine Apache-Site-Konfigurationsdatei:

sudo nano /etc/apache2/sites-available/yourls.conf

Fügen Sie die folgende Site-Konfiguration ein und passen Sie sie an:

 ServerName your-yourls-domain.com DocumentRoot / var / www / yourls DirectoryIndex index.php  AllowOverride All Order Deny, Allow Allow zulassen   

Aktivieren Sie die Site und starten Sie Apache neu:

sudo a2ensite yourls.conf sudo service apache2 reload 

Lassen Sie uns eine MySQL-Datenbank für YOURLS erstellen:

mysql -uroot -p

Erstellen Sie Ihre Datenbank und Berechtigungen für YOURLS:

Erstelle deine Datenbank; Erteilen Sie alle Privilegien für Sie. * TO "yourls_db_user" @ "localhost" wird durch "yourls-pwd" identifiziert. Flush-Privilegien; Ausfahrt; 

Konfigurieren Sie die YOURLS-Site

Nun, da unsere Apache-Site und die MySQL-Datenbank verfügbar sind, konfigurieren wir den Code etwas mehr.

Beginnen Sie mit dem Kopieren des Konfigurationsbeispiels in eine Live-Datei und gewähren Sie vorübergehend Schreibberechtigungen für die Installation.

cd / var / www / yourls cp ./user/config-sample.php ./user/config.php chmod 0666 ./user/config.php 

Lassen Sie uns die Datei bearbeiten:

sudo nano ./user/config.php

Konfigurieren Sie zunächst Ihre Datenbankeinstellungen basierend auf der oben beschriebenen Konfiguration von MySQL. Sie können die Konfigurationseinstellungen in der YOURLS-Site-Dokumentation verfolgen:

/ * ** MySQL-Einstellungen - Diese Informationen erhalten Sie von Ihrem Web-Host. * / / ** MySQL-Datenbank-Benutzername * / define ('YOURLS_DB_USER', 'Ihr Datenbankbenutzername'); / ** MySQL-Datenbankkennwort * / define ('YOURLS_DB_PASS', 'Ihr Datenbankkennwort'); / ** Der Name der Datenbank für YOURLS * / define ('YOURLS_DB_NAME', 'yourls'); / ** MySQL-Hostname. ** Wenn Sie einen nicht standardmäßigen Port verwenden, geben Sie diesen wie 'hostname: port' an, z. 'localhost: 9999' oder '127.0.0.1:666' * / define ('YOURLS_DB_HOST', 'localhost'); / ** MySQL-Tabellenpräfix * / define ('YOURLS_DB_PREFIX', 'yourls_');

Geben Sie anschließend den Namen Ihrer gewählten Domain-Site (die URL) und die ersten Benutzerkennwörter an. Die Eingabe der Passwörter im Klartext ist vorübergehend in Ordnung, da sie von YOURLS übernommen werden.

/ ** YOURLS-Installations-URL - alles in Kleinbuchstaben und ohne nachstehenden Schrägstrich. ** Wenn Sie "http://site.com" definieren, verwenden Sie "http://www.site.com" nicht in Ihrem Browser (und umgekehrt). * / Define ('YOURLS_SITE', ') http://site.com '); / ** Benutzername und Kennwort, die zum Zugriff auf die Website berechtigt sind. Kennwörter entweder als Klartext oder als verschlüsselte Hashwerte ** YOURLS verschlüsselt Klartextkennwörter in dieser Datei automatisch. ** Weitere Informationen finden Sie unter http://yourls.org/userpassword. * / $ Yourls_user_passwords = array ('username' => 'kennwort ',' username2 '=>' password2 '// Sie können eine oder mehrere' login '=>' password 'Zeilen haben); 

Wir müssen auch eine .htaccess-Datei erstellen und sicherstellen, dass Apache mod_rewrite aktiv ist:

sudo a2enmod umschreiben sudo nano /var/www/yourls/.htaccess

Fügen Sie die Standard-.htaccess-Datei in Folgendes ein:

# BEGINNE DEIN  RewriteEngine On RewriteBase / RewriteCond% REQUEST_FILENAME! -F RewriteCond% REQUEST_FILENAME! -D RewriteRule ^. * $ /Yourls-loader.php [L]  # END YOURLS

Weitere Details zum Konfigurieren von .htaccess und YOURLS finden Sie hier.

Besuchen Sie jetzt Ihre YOURLS-Site-Verwaltung unter http://yourexampledomain.com/admin und führen Sie alle noch erforderlichen Konfigurationsschritte durch.

Wenn die Kennwörter gehasht wurden und YOURLS ordnungsgemäß ausgeführt wird, müssen Sie die Berechtigungen für die Konfigurationsdatei so ändern, dass sie nur noch lesbar sind:

sudo chmod 0440 ./user/config.php 

Wenn Sie ein paar Verknüpfungen eingeben und damit beginnen, Datenverkehr zu erhalten, sollten Sie unter / admin einen Pfad wie folgt sehen:

Erstellen Sie eine Startseite

Standardmäßig gibt es keine YOURLS-Startseite. Dies ist beabsichtigt, um zu verhindern, dass Spammer Ihren Dienst missbrauchen. 

Ich habe eine standardmäßige index.php-Datei erstellt, um sie auf meine Beratungs-Webseite umzuleiten. Besucher erhalten diese Seite nur, wenn sie meine YOURLS-URL ohne korrekte Verknüpfung eingeben:

     
Bitte besuchen Sie unsere Website Lookahead Consulting

Wenn Sie jedoch eine öffentliche Shortcut-Seite anbieten möchten, kopieren Sie die Datei sample-public-front-page.txt in index.php.

cp sample-public-front-page.txt index.php

Verknüpfungen erstellen

Das Erstellen von Verknüpfungen ist einfach und sollte selbsterklärend sein. Hier ein Beispiel, wie ich eine Verknüpfung zu meinem Tuts + Instructor-Profil erstelle:

YOURLS macht es einfach, Ihre URL auf Twitter und Facebook zu teilen:

Verkehrsstatistik

Statistiken sind einer der nützlichsten Aspekte von YOURLS. Hier sind allgemeine Aktivitätsniveaus im Laufe der Zeit:

Und hier sind die geographischen Verweisinformationen:

Hier ist der Grund, warum ich YOURLS gewählt habe: detaillierte Verkehrszahlen zu erhalten, auf welchen Seiten die meisten Affiliate-Empfehlungen verzeichnet wurden.

Dies wird mir im Laufe der Zeit dabei helfen, die Platzierung meiner Partnerwerbung zu optimieren.

Mit YOURLS mehr erreichen

Es gibt auch eine umfangreiche Gruppe von YOURLS-Plugins und eine API zum Erkunden. Beispielsweise gibt es Memcached- und QR-Code-Plugins.

YOURLS ist ein gut konfigurierter, enger Teil von PHP-Code zum Ausführen eines eigenen URL-Shortener. Ich hoffe, Sie fanden das nützlich.

Bitte posten Sie Kommentare, Korrekturen oder zusätzliche Ideen weiter unten. Sie können meine anderen Tuts + -Tutorials auf meiner Instructor-Seite durchsuchen oder mir auf Twitter @reifman folgen.

ähnliche Links

  • YOURLS-Website
  • YOURLS-Versionen und Code-Downloads
  • YOURLS-Plugin-Liste
  • YOURLS API-Dokumentation
  • Folgen Sie YOURLS auf Twitter