Was ist URL-Encoding?
URL-Encoding, auch bekannt als Prozent-Kodierung, bezeichnet den Prozess, bei dem Zeichen in ein Format umgewandelt werden, das sicher über das Internet als Teil einer URL übertragen werden kann. Da URLs auf einen eingeschränkten ASCII-Zeichensatz begrenzt sind, müssen Sonderzeichen — wie Leerzeichen, Et-Zeichen (&), Gleichheitszeichen, Schrägstriche und Nicht-ASCII-Unicode-Zeichen — vor der Verwendung in einer URL kodiert werden.
Bei der Kodierung wird das unsichere Zeichen durch ein Prozentzeichen (%), gefolgt von zwei hexadezimalen Ziffern ersetzt, die den ASCII- oder UTF-8-Byte-Wert des Zeichens darstellen. Ein Leerzeichen ( ) wird beispielsweise zu %20, ein Et-Zeichen (&) zu %26 und ein Schrägstrich (/) zu %2F.
Die URL-Kodierung wurde von der Internet Engineering Task Force (IETF) im Standard RFC 3986 definiert. Dieser Standard stellt sicher, dass URLs von Browsern, Servern, APIs und anderen HTTP-Clients unabhängig vom Betriebssystem oder der Programmiersprache korrekt interpretiert werden.
Es gibt zwei gängige Arten: URL-Encoding (für Query-Strings, wobei Leerzeichen zu + werden) und URI-Component-Encoding (strenger, wobei Leerzeichen zu %20 werden). Unser Tool nutzt die PHP-Funktion urlencode(), die dem application/x-www-form-urlencoded Standard folgt, wie er in Webformularen und APIs üblich ist.
So nutzen Sie unseren URL-Encoder
- Eingabe einfügen: Geben Sie den Text, die URL-Komponente oder den Query-Parameter, den Sie umwandeln möchten, in das linke Textfeld ein.
- "URL Encodieren" klicken: Das Tool verarbeitet Ihre Eingabe sofort und zeigt das Prozent-kodierte Ergebnis im rechten Feld an.
- Ergebnis kopieren: Klicken Sie auf In die Zwischenablage kopieren, um den kodierten String zu übernehmen und direkt in Ihren Code oder Ihre Anwendung einzufügen.
- Zurücksetzen: Nutzen Sie den Button Leeren, um die Eingabefelder für eine neue Berechnung zu löschen.
Dieses Tool arbeitet serverseitig mit PHP und unterstützt daher alle Unicode-Zeichen, einschließlich Arabisch, Chinesisch, Japanisch, Kyrillisch und Emojis – diese werden korrekt als UTF-8-Byte-Sequenzen kodiert.
Warum ist URL-Encoding wichtig?
URL-Encoding ist eine Grundvoraussetzung für die Webentwicklung. Hier sind die wichtigsten Gründe für den Einsatz in der Praxis:
- Query-Parameter: Wenn Sie URLs mit Parametern erstellen (z. B.
?suche=hallo welt&lang=de), müssen Sonderzeichen kodiert werden, um die URL-Struktur nicht zu beschädigen. Ein unkodiertes Leerzeichen führt meist zu einem Serverfehler. - API-Anfragen: REST-APIs und GraphQL-Endpunkte erhalten Daten häufig über URL-Parameter. Benutzereingaben (Suchanfragen, Benutzernamen) müssen zwingend kodiert werden, um Sicherheitsrisiken und Parsing-Fehler zu vermeiden.
- Formularübertragungen: HTML-Formulare mit
method="GET"kodieren Werte zwar automatisch, aber wenn Sie URLs manuell in JavaScript oder PHP erstellen, müssen Sie die Kodierung selbst mitencodeURIComponent()oderurlencode()vornehmen. - Internationalisierung (i18n): URLs, die Nicht-ASCII-Zeichen enthalten, müssen Prozent-kodiert werden, damit sie weltweit von HTTP-Implementierungen korrekt verarbeitet werden können.
- Sicherheit: Eine korrekte Kodierung hilft, bestimmte Arten von Injection-Angriffen zu verhindern, bei denen Angreifer versuchen, Steuerzeichen in eine URL einzuschleusen, um die Logik auf der Serverseite zu manipulieren.
Beispiele für URL-Encoding
Hier sehen Sie anhand einiger Beispiele, wie die Prozent-Kodierung verschiedene Zeichentypen transformiert:
hallo welt https://example.com/suche?q=katzen & hunde [email protected] preis=49,99€ naïve résumé
hallo+welt https%3A%2F%2Fexample.com%2Fsuche%3Fq%3Dkatzen+%26+hunde user%40email.com preis%3D49%2C99%E2%82%AC na%C3%AFve+r%C3%A9sum%C3%A9
Beachten Sie, dass das Leerzeichen zu + wird, Doppelpunkte und Slashes kodiert werden und Sonderzeichen (£, ï, é) in ihre UTF-8-Repräsentation umgewandelt werden. Genau dieses Format erwarten Webserver und HTTP-Clients.
Falls Sie eine bereits kodierte URL wieder in ihre lesbare Form zurückverwandeln möchten, nutzen Sie unser ergänzendes URL-Decoder-Tool.