From be63ddc900137de8ead0c40f1081e7af21478c1f Mon Sep 17 00:00:00 2001 From: Jonas Leder Date: Sun, 20 Dec 2020 01:36:38 +0100 Subject: [PATCH] =?UTF-8?q?fixed=20title=20of=20url=20k=C3=BCrzer=20v1=20a?= =?UTF-8?q?nd=20v2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Projekte/URLkuerzer1.php | 2 +- Projekte/URLkuerzer2.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Projekte/URLkuerzer1.php b/Projekte/URLkuerzer1.php index 0deb0ad..9b0d82f 100644 --- a/Projekte/URLkuerzer1.php +++ b/Projekte/URLkuerzer1.php @@ -3,7 +3,7 @@ include "../internal/header.php"; include "../internal/footer.php"; include "../internal/comments.php"; -getHeader("URL Kärzer V1", "projekte"); +getHeader("URL Kürzer V1", "projekte"); ?>

Da Google seinen URL kürzer leider einstellt (vgl. https://developers.googleblog.com/2018/03/transitioning-google-url-shortener.html ), habe ich mir das Ziel genommen selber einen schnellen URL kürzer ohne Werbung (wie z.b. adf.ly) zu schreiben. Zum Einsatz kommt dabei PHP für das Frontend Python für die SQL abfragen und MySQL als Datenbank.

Wenn ihr den Quellcode verwenden wollt müsst ihr in eurem Webserver noch ein Alias konfigurieren. Für Apache würde dieser beispielhaft folgendermaßen lauten:

diff --git a/Projekte/URLkuerzer2.php b/Projekte/URLkuerzer2.php index 04e92e5..797c556 100644 --- a/Projekte/URLkuerzer2.php +++ b/Projekte/URLkuerzer2.php @@ -3,7 +3,7 @@ include "../internal/header.php"; include "../internal/footer.php"; include "../internal/comments.php"; -getHeader("URL Kärzer V2", "projekte"); +getHeader("URL Kürzer V2", "projekte"); ?>

Mein alter URL kürzer war zwar schon gut, jedoch hatte ich den kompletten Code sehr unübersichtlich gestaltet mit allem in einer PHP Datei und Alis Konfigurationen im Webserver. Dies war alles sehr unübersichtlich und schwer zu erweitern, selber hosten. Daher habe ich mich entschieden alles von vorne zu Programmieren und dabei auf möglichst übersichtlichen Code zu achten. Desweiteren war mir wichtig, dass jeder den URL kürzer mit möglichst kleinem Aufwand selber hosten kann. Daher habe ich mich für Python mit Flask und Waitress als Webserver entschieden. Das schöne an Flask ist, dass man eine dynamische HTML-Datei hat und im eigentlichen Python Script nur noch die Platzhalter ausfüllt. Als Datenspeicher habe ich mich diesesmal für SQLite entschieden, da dieses von der Performance völlig ausreichend ist und mit weniger Aufwand verbunden ist. Zum einfachen selber aufsetzen habe ich alles in einen Docker-Container verpackt. Neben des komplett neu geschriebenen Codes habe ich auch ein paar neue Features verbaut. So stehen nun mehrere Domains zur Verfügung (wie man es von adf.ly kennt). Zur Zeit sind es 8 Domains, dies kann sich aber noch ändern. Eine weitere Veränderung ist, dass nach dem kürzen eines URLs nun auch ein QR-Code angezeigt wird, mit diesem ist das teilen der Links noch einfacher. Und zu guter letzt ein für mich sehr wichtiges Feature ist die Größe der Website. Die Neue Website ist jetzt nur noch wenige Kilobyte groß. Das Schöne an der Verteilmethode via Docker ist auch, dass es für den Server kaum Voraussetzungen gibt. So muss nur Docker installiert sein. Es empfiehlt sich zwar noch einen Webserver als HTTPS Proxy zu installieren. Dies ist aber nicht zwingend notwendig.

UPDATES: