Was ist URL-Encoding? Ein Leitfaden zur Prozentkodierung in Webadressen
URL-Encoding (Prozentkodierung) ist der Mechanismus, der sicherstellt, dass Webadressen sicher durch das Internet reisen, indem Sonderzeichen in ein universell übertragbares Format umgewandelt werden. Jeder Webentwickler begegnet ihm täglich.
Warum URL-Encoding existiert
URLs wurden ursprünglich für einen begrenzten Zeichensatz aus dem ASCII-Repertoire konzipiert. Das moderne Web muss jedoch Daten übertragen, die Leerzeichen, akzentuierte Zeichen, Emojis und Symbole enthalten — all das hat in einer rohen URL nichts zu suchen. URL-Encoding löst dieses Problem, indem unsichere Zeichen durch ein % gefolgt von zwei hexadezimalen Ziffern ersetzt werden.
Wie Prozentkodierung funktioniert
Jedes zu kodierende Zeichen wird in seinen Byte-Wert (in UTF-8 bei den meisten modernen Systemen) umgewandelt und als %XX dargestellt, wobei XX der Hexadezimalwert ist. Zum Beispiel:
- Ein Leerzeichen wird zu
%20 - Ein Und-Zeichen
&wird zu%26 - Das Euro-Zeichen
€wird zu%E2%82%AC(drei Bytes in UTF-8) - Ein Schrägstrich
/wird zu%2F
Manche Zeichen sind immer sicher und brauchen nie kodiert zu werden: Buchstaben (A-Z, a-z), Ziffern (0-9) und einige Sonderzeichen wie -, _, . und ~.
Reservierte und nicht reservierte Zeichen
RFC 3986 definiert zwei Kategorien:
- Nicht reservierte Zeichen: Buchstaben, Ziffern,
-,_,.,~— diese brauchen nie Kodierung. - Reservierte Zeichen:
:,/,?,#,[,],@,!,$,&,',(,),*,+,,,;,=— diese haben eine strukturelle Bedeutung in URLs und müssen kodiert werden, wenn sie als Daten statt als Trennzeichen verwendet werden.
Wann URLs kodiert werden müssen
Häufige Szenarien, die URL-Encoding erfordern:
- Query-Parameter: Werte in
?key=value-Paaren müssen kodiert werden, um Leerzeichen und Sonderzeichen zu verarbeiten. - Pfadsegmente: Dateinamen oder Slugs mit Nicht-ASCII-Zeichen benötigen Kodierung.
- Formularübermittlungen: HTML-Formulare mit
application/x-www-form-urlencodedverwenden eine leicht andere Kodierung, bei der Leerzeichen zu+werden. - Weiterleitungen: Serverseitige Redirects mit benutzergenerierten Inhalten in der URL.
Häufige Fallstricke
- Doppelte Kodierung: Eine bereits kodierte URL erneut zu kodieren, erzeugt
%25-Sequenzen, die die ursprünglichen Daten beschädigen. - Die gesamte URL kodieren: Einzelne Komponenten (Pfad, Query-Werte) sollten kodiert werden, nicht die gesamte URL mit
://und?. - Pluszeichen-Verwirrung: In Query-Strings steht
+inapplication/x-www-form-urlencodedfür ein Leerzeichen, im URL-Pfad jedoch für ein echtes+.
Häufig gestellte Fragen
Was ist der Unterschied zwischen URL-Encoding und HTML-Encoding?
URL-Encoding konvertiert Zeichen für die sichere Übertragung in Webadressen mit Prozent-Notation (%XX). HTML-Encoding konvertiert Zeichen für die sichere Anzeige in HTML mit Entities wie & und <.
Sollte ich die gesamte URL oder nur Teile davon kodieren?
Kodieren Sie einzelne Komponenten — die Pfadsegmente und Query-Parameterwerte — nicht die gesamte URL. Protokoll, Host und strukturelle Zeichen wie ? und & sollten unkodiert bleiben.
Warum wird ein Leerzeichen manchmal zu %20 und manchmal zu +?
Bei der Prozentkodierung (RFC 3986) ist ein Leerzeichen %20. Bei der Formular-Kodierung (application/x-www-form-urlencoded) wird ein Leerzeichen als + dargestellt. Beides ist gültig, wird aber in unterschiedlichen Kontexten verwendet.
Verwandte Leitfäden
- Was ist Base64-Kodierung? Funktionsweise und Anwendungsgebiete
- Was ist JSON? Ein vollständiger Leitfaden zur JavaScript Object Notation
- Was ist eine UUID? Universell eindeutige Identifikatoren verstehen
- Was ist eine Hash-Funktion? MD5, SHA und kryptografisches Hashing verstehen
- Was ist XML? Ein vollständiger Leitfaden zur Extensible Markup Language
Tool ausprobieren
Nutzen Sie unser kostenloses Tool, um sofort loszulegen.
URL Kodieren & Dekodieren →Zuletzt aktualisiert am 2026-09-27