website/public/projekte/urlkuerzer2.html

52 lines
No EOL
3.5 KiB
HTML

<!DOCTYPE html >
<html lang="de">
<head>
<meta charset="UTF-8">
<meta content="width=device-width, initial-scale=1.0" name="viewport">
<title></title>
<link href="/css/style.css" rel="stylesheet">
</head>
<body>
<jl-header data-title="URL Kürzer V2"></jl-header>
<div id="content">
<p>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.</p>
<h3>UPDATES:</h3>
<ol>
<li>Ich habe mittlerweile einige neue Features implementiert. Dazu gehört ein Login System, mit welchem man
seine eigenen Links einsehen und löschen kann. Dazu gibt es jetzt noch einen Darkmode, welcher automatisch
eingeschaltet wird, wenn dies im Browser eingestellt ist. Dies waren jetzt die beiden Hauptänderungen, ich
habe natürlich noch einiges mehr geändert / neu Implementiert, werde jetzt hier aber nicht alles aufzählen.
</li>
<li>Überall wird aktuell ein Darkmode implementiert, warum also auch nicht hier.</li>
</ol>
<p>Der Quellcode ist <a href="https://gitlab.jonasled.de/jonasled/url_shorter_docker">hier </a>zu finden. Dort ist
auch eine <a
href="https://gitlab.jonasled.de/jonasled/url_shorter_docker/wikis/install">Installationsanleitung</a>.
Meine eigene Installation ist, wie der alte URL kürzer unter <a href="https://kurz.gq">kurz.gq</a> erreichbar.
</p>
Aktueller build Status: <img src="http://gitlab.jonasled.de/jonasled/url_shorter_docker/badges/master/pipeline.svg"><br>
<img src="/API/getFile.php?filename=img/kurz_ml_light.png">
<img src="/API/getFile.php?filename=img/kurz_ml_ldark.jpg">
<h2>Kommentare:</h2>
<jl-comments_display></jl-comments_display>
<jl-new_comment id="newComment"></jl-new_comment>
</div>
<jl-footer></jl-footer>
<script src="/js/script.js"></script>