In diesem Tutorial zeige ich Ihnen, wie Sie Ihren eigenen Open Source-PHP-basierten URL-Shortener namens YOURLS installieren.
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.
Das Hosting Ihres eigenen URL-Shortenerers hat einige Nachteile:
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.
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.
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;
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 DEINRewriteEngine 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:
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
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:
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.
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.