GET-Parameter: Unterschied zwischen den Versionen

Aus Seobility Wiki
Wechseln zu: Navigation, Suche
(Ähnliche Artikel)
 
(18 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
<seo title="GET-Parameter" metadescription="In diesem Artikel erfährst Du, was GET-Parameter sind und wie Du Duplicate Content aufgrund von GET-Parametern vermeiden kannst." />
+
<seo title="GET Parameter: Definition und Funktionsweise" metadescription="GET-Parameter (auch: URL-Parameter) werden genutzt, wenn ein Client mittels HTTP-Protokoll eine bestimmte Ressource von einem Webserver anfordert." />
  
 
== Definition ==
 
== Definition ==
 +
[[File:GET-Parameter.png|mini|450px|rechts|alt=GET-Parameter|'''Abbildung:''' GET-Parameter - Autor: Seobility - Lizenz: [[Creative Commons Lizenz BY-SA 4.0|CC BY-SA 4.0]]|link=https://www.seobility.net/de/wiki/images/5/52/GET-Parameter.png]]
 +
GET-Parameter (auch: URL-Parameter) werden genutzt, wenn ein Client, zum Beispiel ein Browser, mittels HTTP-Protokoll eine bestimmte Ressource von einem Webserver anfordert. GET Parameter sind üblicherweise Name-Wert-Paare, die durch ein Gleichheitszeichen <code>=</code> getrennt werden.
  
GET-Parameter (auch: URL-Parameter) werden genutzt, wenn ein Client, zum Beispiel ein Browser, mittels HTTP-Protokoll eine bestimmte Ressource von einem Webserver anfordert. Anhand der GET-Parameter wird die angeforderte Ressource definiert. GET Parameter sind immer Name-Wert-Paare.
+
== Wie sehen URL-Parameter aus? ==
  
== Funktionsweise der GET Anfrage ==
+
Eine beispielhafte URL könnte so aussehen:
  
HTTP funktioniert als Anfrage-Antwort-Protokoll zwischen einem Client und einem Server. Insgesamt sind 9 verschiedene Anforderungsmethoden in HTTP definiert, um die gewünschte Aktion anzugeben, die für eine bestimmte Ressource vom Server ausgeführt werden soll. Jede dieser Anforderungsmethoden implementiert eine andere Semantik. Die GET Anfrage ist eine der gebräuchlichsten HTTP-Request-Methoden.  
+
<pre>https://www.example.com/index.html?name1=value1&name2=value2</pre>
  
Eine GET Anfrage wird verwendet, um Daten von einer angegebenen Ressource anzufordern. Ein Client, zum Beispiel ein Browser kann diese HTTP Methode verwenden, um eine Webressource von einem Server abzurufen. Mit der GET Anfrage werden vom Client zusammen mit der angefragten URL die GET-Parameter übermittelt. GET-Parameter sind immer Name-Wert-Paare. Die Name-Wert-Paare werden mit einem "?" an die URL angefügt. Der Name und der zugehörige Wert werden immer durch ein "=" voneinander getrennt.
+
Der GET-Parameter beginnt immer mit einem Fragezeichen <code>?</code>. Darauf folgt der Name der Variable und der zugehörige Wert, getrennt durch ein <code>=</code>. Enthält eine URL mehr als einen Parameter, werden diese durch ein kaufmännisches und <code>&</code> getrennt.
  
Eine GET Anfrage hat folgende beispielhafte Syntax:
+
[[File:Get-parameter-beispiel.png|border|link=|750px|alt=GET Parameter|Get Parameter im Webshop von H&M]]
  
<pre><nowiki>https://www.example.com/index.html?name1=value1</nowiki></pre>
+
Screenshot mit GET Parameter von [https://www2.hm.com/de_de/damen/produkte/schuhe.html?sort=new hm.de].
  
Mit einer GET Anfrage können aber auch mehrere Parameter übermittelt werden. Die Länge der Anfrage und damit die Anzahl der übermittelten Name-Wert-Paare ist nur durch die maximal mögliche Länge einer URL begrenzt. Bei der Übermittlung mehrerer Parameter werden die einzelnen Parameter durch das kaufmännische UND-Zeichen ("&") voneinander getrennt. Werden beispielsweise mehrere Parameter bei der Verwendung der Filterfunktion eines Onlineshops übergeben, kann die GET Anfrage wie folgt aussehen:
+
== Verwendung von Get-Parametern ==
  
<pre><nowiki>https://www.example.com/index.html?Kategorie=Mountainbikes&Groesse=29_Zoll&Farbe=Orange</nowiki></pre>
+
GET-Parameter lassen sich prinzipiell in <strong>aktiv</strong> und <strong>passiv</strong> unterteilen. Aktive Parameter modifizieren dabei den Content einer Seite beispielsweise durch:
  
Die Antwort des Servers auf eine Anfrage eines Clients enthält Informationen darüber, ob die angeforderte Ressource auf dem Server vorhanden ist und wo der Client die Ressource finden kann. Die Antwort enthält somit nicht direkt die angeforderte Ressource. Der Browser kann die Ressource jedoch im Anschluss anhand der vom Server erhaltenen Informationen laden und anzeigen. Der Grund für diese wechselseitigen Anfragen und Antworten zwischen Client und Server liegt darin, dass das HTTP-Protokoll auf eine Frage nur eine Antwort erlaubt.
+
* '''Filtern der Inhalte:''' <code>?type=green</code> zeigt etwa auf einer E-Commerce-Seite nur grüne Produkte an.
 +
* '''Sortieren der Inhalte:''' <code>?sort=price_ascending</code> sortiert die angezeigten Produkte nach Preis, in diesem Falle aufsteigend.
  
== Die Eigenschaften von GET-Anfragen ==
+
Passive GET-Parameter hingegen verändern den Inhalt einer Seite nicht und werden primär zum Sammeln von Nutzerdaten genutzt. Anwendungsbeispiele sind unter anderem:
  
GET-Anfragen können grundsätzlich zwischengespeichert und mit einem Lesezeichen versehen werden. Zudem verbleiben sie im Browserverlauf. Aus diesem Grund sollte diese HTTP-Anfragemethode nicht im Umgang mit sensiblen Daten, wie zum Beispiel Login-Informationen, verwendet werden.  
+
* '''Tracking von [[Session-ID]]s:''' <code>?sessionid=12345</code> So lassen sich Besuche einzelner Nutzer abspeichern, wenn Cookies abgelehnt wurden.
 +
* '''Tracking von [[Traffic]]:''' <code>?utm_source=google</code> Mithilfe von URL-Parametern lässt sich nachverfolgen, über welche Links Besucher auf die eigene Website gelangt sind. Diese UTM-Parameter (Urchin Tracking Module) funktionieren mit Analytics-Tools und können dabei helfen, den Erfolg einer Kampagne zu bewerten. Neben <code>source</code> stehen dabei <code>utm_medium</code>, <code>utm_campaign</code>, <code>utm_term</code> und<code>utm_content</code> zur Verfügung. Mehr Informationen dazu finden sich in Google's [[https://ga-dev-tools.appspot.com/campaign-url-builder/ Campaign URL Builder]].
  
Weiterhin werden mit einer GET-Anfrage nur Daten angefordert und keine Ressourcen verändert. Daher wird davon ausgegangen, dass es sich um eine sichere, wiederholbare Operation von Browsern, Caches und anderen HTTP-fähigen Komponenten handelt. Dies bedeutet, dass GET-Anfragen ohne vorherige Prüfung erneut ausgegeben werden können. So hat beispielsweise die Anzeige des Kontoguthabens, die mit einer GET-Anfrage realisiert wird, keinen Einfluss auf das Konto und kann daher sicher wiederholt werden. Aus diesem Grund ermöglichen es Browser einem Benutzer, eine Seite zu aktualisieren, die aus einer GET-Anfrage resultiert, ohne eine Warnung anzuzeigen. Auch andere HTTP-fähige Komponenten wie Proxys können GET-Anforderungen automatisch erneut übermitteln, wenn sie auf ein temporäres Netzwerkverbindungsproblem stoßen.
+
== Mögliche Probleme im Zusammenhang mit GET-Parametern ==
  
Ein Nachteil von GET-Anforderungen besteht allerdings darin, dass sie nur Daten in Form von Parametern bereitstellen können, die im URI oder als Cookies im Cookieanforderungsheader codiert sind. Daher kann diese Methode nicht zum Hochladen von Dateien oder für andere Vorgänge verwendet werden, bei denen große Datenmengen an den Server gesendet werden müssen.
+
Enhthält eine Website zu viele Unterseiten mit URL-Parametern, kann dies dem Ranking selbiger schaden. Die häufigsten Probleme im Bezug auf GET-Parameter sind dabei <strong> Duplicate Content, Verschwendung von Crawl Budget und unleserliche URLs</strong>.
  
== GET-Parameter und Duplicate-Content ==
+
=== Duplicate-Content ===
  
 
Die Generierung der GET-Parameter, beispielsweise auf Basis der Einstellungen von Website-Filtern, kann schwerwiegende [[Duplicate Content]] Probleme bei E-Commerce-Seiten verursachen. Denn wenn Shopbesucher Filter verwenden können, um den Inhalt einer Seite zu sortieren oder einzugrenzen, werden zusätzliche URLs generiert, obwohl sich die Inhalte der Seiten nicht zwangsläufig unterscheiden. Zur Veranschaulichung dieses Problems soll folgendes Beispiel dienen:
 
Die Generierung der GET-Parameter, beispielsweise auf Basis der Einstellungen von Website-Filtern, kann schwerwiegende [[Duplicate Content]] Probleme bei E-Commerce-Seiten verursachen. Denn wenn Shopbesucher Filter verwenden können, um den Inhalt einer Seite zu sortieren oder einzugrenzen, werden zusätzliche URLs generiert, obwohl sich die Inhalte der Seiten nicht zwangsläufig unterscheiden. Zur Veranschaulichung dieses Problems soll folgendes Beispiel dienen:
  
Wenn die URL einer E-Commerce-Website die vollständige Liste aller vorhandenen Produkte in aufsteigender alphabetischer Reihenfolge enthält und der Benutzer die Produkte in absteigender Reihenfolge sortiert, ist die URL für die neue Sortierung  <code>/all-products.html?sort=Z-A</code>. In diesem Fall hat die neue URL den gleichen Inhalt wie die ursprüngliche Seite, nur in einer anderen Reihenfolge. Dies ist allerdings problematisch, da diese Inhalte von Google als Duplicate Content gewertet werden können. Die Folge ist, dass Google nicht bestimmen kann, welche Seite in den Suchergebnissen angezeigt werden soll und welche Rankingsignale welcher der URLs zugeordnet werden sollen, wodurch sich die Relevanz auf die beiden Unterseiten aufteilt. Eine Lösung dieses Problems besteht darin, die Beziehung der Seiten zueinander eindeutig durch [[Canonical Link|Canonical-Tags]] zu definieren.  
+
<div style="border-style:solid; border-width:1px;border-color:rgb(170, 170, 170);padding:10px;">
 +
Wenn die URL einer E-Commerce-Website die vollständige Liste aller vorhandenen Produkte in aufsteigender alphabetischer Reihenfolge enthält und der Benutzer die Produkte in absteigender Reihenfolge sortiert, ist die URL für die neue Sortierung  <code>/all-products.html?sort=Z-A</code>. In diesem Fall hat die neue URL den gleichen Inhalt wie die ursprüngliche Seite, nur in einer anderen Reihenfolge. Dies ist allerdings problematisch, da diese Inhalte von Google als Duplicate Content gewertet werden können. Die Folge ist, dass Google nicht bestimmen kann, welche Seite in den Suchergebnissen angezeigt werden soll und welche Rankingsignale welcher der URLs zugeordnet werden sollen, wodurch sich die Relevanz auf die beiden Unterseiten aufteilt.
 +
</div>
 +
 
 +
Eine Lösung dieses Problems besteht darin, die Beziehung der Seiten zueinander eindeutig durch [[Canonical Tag|Canonical-Tags]] zu definieren.
  
 
Canonical-Tags werden verwendet, um Suchmaschinen anzuzeigen, dass bestimmte Seiten als Kopien einer bestimmten URL behandelt werden sollen und dass alle Rankings tatsächlich der kanonischen URL gutgeschrieben werden sollten. Ein Canonical Tag kann im <head>-Bereich des HTML-Dokuments oder alternativ in den [[HTTP Header|HTTP-Header]] der Webseite eingefügt werden. Wird der Canonical Tag im <head>-Bereich implementiert lautet die Syntax beispielsweise:
 
Canonical-Tags werden verwendet, um Suchmaschinen anzuzeigen, dass bestimmte Seiten als Kopien einer bestimmten URL behandelt werden sollen und dass alle Rankings tatsächlich der kanonischen URL gutgeschrieben werden sollten. Ein Canonical Tag kann im <head>-Bereich des HTML-Dokuments oder alternativ in den [[HTTP Header|HTTP-Header]] der Webseite eingefügt werden. Wird der Canonical Tag im <head>-Bereich implementiert lautet die Syntax beispielsweise:
Zeile 41: Zeile 49:
 
Wird dieser Link allen URLs, die durch unterschiedliche Kombinationen von Filtern entstehen können, hinzugefügt, wird die Link Power all dieser Unterseiten auf die kanonische URL gebündelt und Google weiß, welche Seite in den SERPs angezeigt werden soll.
 
Wird dieser Link allen URLs, die durch unterschiedliche Kombinationen von Filtern entstehen können, hinzugefügt, wird die Link Power all dieser Unterseiten auf die kanonische URL gebündelt und Google weiß, welche Seite in den SERPs angezeigt werden soll.
  
Der Canonical Tag ist somit eine einfache Lösung, um [[Suchmaschinen Crawler]] zu dem Inhalt zu führen, den sie indexieren sollen.  
+
Der Canonical Tag ist somit eine einfache Lösung, um [[Suchmaschinen Crawler]] zu dem Inhalt zu führen, den sie indexieren sollen.
 +
 
 +
=== Verschwendung von Crawl Budget ===
 +
 
 +
Google crawlt pro Website nur eine bestimmte Anzahl an URLs. Diese Menge an URLs wird Crawl Budget genannt. Mehr Informationen dazu finden sich im [https://www.seobility.net/de/blog/crawl-budget-optimierung/ Seobility Blog].
 +
 
 +
Hat eine Website durch die Verwendung von URL-Parametern viele crawlbare URLs, so kann es passieren, dass Googlebot das Crawl Budget für die falschen Seiten verbraucht. Eine Methode, diesem Problem vorzubeugen, ist die [[Robots.txt|robots.txt]]. Darin kann festgelegt werden, dass der Googlebot URLs mit bestimmten Parametern nicht crawlen soll.
 +
 
 +
=== Unleserliche URLs ===
 +
 
 +
Zuviele Parameter in URLs können dazu führen, dass die URL für Nutzer schlecht zu lesen und schwer zu merken ist. Im schlimmsten Fall kann das [[Usability]] und der [[CTR (Click-Through-Rate)|Click-Through-Rate]] schaden.
 +
 
 +
Grundsätzlich kann sowohl Duplicate Content als auch Problemen mit Crawl Budget zumindest teilweise vorgebeugt werden, indem überflüssige Parameter in einer URL vermieden werden.
 +
 
 +
== Weiterführende Links ==
 +
 
 +
* https://support.google.com/google-ads/answer/6277564?hl=de
  
Eine weitere Möglichkeit, um Duplicate Content durch GET-Parameter zu vermeiden, ist die zusätzliche Angabe der kanonischen URLs in einer [[XML-Sitemap|Sitemap]].
+
== Ähnliche Artikel ==
  
Grundsätzlich kann Duplicat Content Problemen vorgebeugt werden, indem überflüssige Parameter in einer URL vermieden werden, nicht zuletzt, da die URL durch die Aneinanderreihung der GET Parameter für User unleserlich und schwer verständlich wird. Wenn möglich, sollten URLs mit Parametern daher auf URLs ohne Parameter umgeleitet werden.
+
* [[HTTP Header]]
  
 
[[Kategorie:Web Entwicklung]]
 
[[Kategorie:Web Entwicklung]]
 +
 +
<html><script type="application/ld+json">
 +
    {
 +
      "@context": "https://schema.org/",
 +
      "@type": "ImageObject",
 +
      "contentUrl": "https://www.seobility.net/de/wiki/images/5/52/GET-Parameter.png",
 +
      "license": "https://creativecommons.org/licenses/by-sa/4.0/deed.de",
 +
      "acquireLicensePage": "https://www.seobility.net/de/wiki/Creative_Commons_Lizenz_BY-SA_4.0"
 +
    }
 +
    </script></html>
 +
 +
{| class="wikitable" style="text-align:left"
 +
|-
 +
|'''Über den Autor'''
 +
|-
 +
| [[File:Seobility S.jpg|link=|100px|left|alt=Seobility S]] Das Seobility Wiki Team besteht aus SEO-, Online-Marketing- und Web-Experten mit praktischer Erfahrung in den Bereichen Suchmaschinenoptimierung, Online-Marketing und Webentwicklung. Alle unsere Artikel durchlaufen einen mehrstufigen Redaktionsprozess, um Dir die bestmögliche Qualität und wirklich hilfreiche Informationen bieten zu können. <html><a href="https://www.seobility.net/de/wiki/Seobility_Wiki_Team" target="_blank">Mehr Informationen über das Seobility Wiki Team</a></html>.
 +
|}
 +
 +
<html><script type="application/ld+json">
 +
{
 +
  "@context": "https://schema.org",
 +
  "@type": "Article",
 +
  "author": {
 +
    "@type": "Organization",
 +
    "name": "Seobility",
 +
    "url": "https://www.seobility.net/"
 +
  }
 +
}
 +
</script></html>

Aktuelle Version vom 23. Januar 2024, 13:50 Uhr

Definition

GET-Parameter
Abbildung: GET-Parameter - Autor: Seobility - Lizenz: CC BY-SA 4.0

GET-Parameter (auch: URL-Parameter) werden genutzt, wenn ein Client, zum Beispiel ein Browser, mittels HTTP-Protokoll eine bestimmte Ressource von einem Webserver anfordert. GET Parameter sind üblicherweise Name-Wert-Paare, die durch ein Gleichheitszeichen = getrennt werden.

Wie sehen URL-Parameter aus?

Eine beispielhafte URL könnte so aussehen:

https://www.example.com/index.html?name1=value1&name2=value2

Der GET-Parameter beginnt immer mit einem Fragezeichen ?. Darauf folgt der Name der Variable und der zugehörige Wert, getrennt durch ein =. Enthält eine URL mehr als einen Parameter, werden diese durch ein kaufmännisches und & getrennt.

GET Parameter

Screenshot mit GET Parameter von hm.de.

Verwendung von Get-Parametern

GET-Parameter lassen sich prinzipiell in aktiv und passiv unterteilen. Aktive Parameter modifizieren dabei den Content einer Seite beispielsweise durch:

  • Filtern der Inhalte: ?type=green zeigt etwa auf einer E-Commerce-Seite nur grüne Produkte an.
  • Sortieren der Inhalte: ?sort=price_ascending sortiert die angezeigten Produkte nach Preis, in diesem Falle aufsteigend.

Passive GET-Parameter hingegen verändern den Inhalt einer Seite nicht und werden primär zum Sammeln von Nutzerdaten genutzt. Anwendungsbeispiele sind unter anderem:

  • Tracking von Session-IDs: ?sessionid=12345 So lassen sich Besuche einzelner Nutzer abspeichern, wenn Cookies abgelehnt wurden.
  • Tracking von Traffic: ?utm_source=google Mithilfe von URL-Parametern lässt sich nachverfolgen, über welche Links Besucher auf die eigene Website gelangt sind. Diese UTM-Parameter (Urchin Tracking Module) funktionieren mit Analytics-Tools und können dabei helfen, den Erfolg einer Kampagne zu bewerten. Neben source stehen dabei utm_medium, utm_campaign, utm_term undutm_content zur Verfügung. Mehr Informationen dazu finden sich in Google's [Campaign URL Builder].

Mögliche Probleme im Zusammenhang mit GET-Parametern

Enhthält eine Website zu viele Unterseiten mit URL-Parametern, kann dies dem Ranking selbiger schaden. Die häufigsten Probleme im Bezug auf GET-Parameter sind dabei Duplicate Content, Verschwendung von Crawl Budget und unleserliche URLs.

Duplicate-Content

Die Generierung der GET-Parameter, beispielsweise auf Basis der Einstellungen von Website-Filtern, kann schwerwiegende Duplicate Content Probleme bei E-Commerce-Seiten verursachen. Denn wenn Shopbesucher Filter verwenden können, um den Inhalt einer Seite zu sortieren oder einzugrenzen, werden zusätzliche URLs generiert, obwohl sich die Inhalte der Seiten nicht zwangsläufig unterscheiden. Zur Veranschaulichung dieses Problems soll folgendes Beispiel dienen:

Wenn die URL einer E-Commerce-Website die vollständige Liste aller vorhandenen Produkte in aufsteigender alphabetischer Reihenfolge enthält und der Benutzer die Produkte in absteigender Reihenfolge sortiert, ist die URL für die neue Sortierung /all-products.html?sort=Z-A. In diesem Fall hat die neue URL den gleichen Inhalt wie die ursprüngliche Seite, nur in einer anderen Reihenfolge. Dies ist allerdings problematisch, da diese Inhalte von Google als Duplicate Content gewertet werden können. Die Folge ist, dass Google nicht bestimmen kann, welche Seite in den Suchergebnissen angezeigt werden soll und welche Rankingsignale welcher der URLs zugeordnet werden sollen, wodurch sich die Relevanz auf die beiden Unterseiten aufteilt.

Eine Lösung dieses Problems besteht darin, die Beziehung der Seiten zueinander eindeutig durch Canonical-Tags zu definieren.

Canonical-Tags werden verwendet, um Suchmaschinen anzuzeigen, dass bestimmte Seiten als Kopien einer bestimmten URL behandelt werden sollen und dass alle Rankings tatsächlich der kanonischen URL gutgeschrieben werden sollten. Ein Canonical Tag kann im <head>-Bereich des HTML-Dokuments oder alternativ in den HTTP-Header der Webseite eingefügt werden. Wird der Canonical Tag im <head>-Bereich implementiert lautet die Syntax beispielsweise:

<link rel="canonical" href="https://www.example.com/all-products.html"/>

Wird dieser Link allen URLs, die durch unterschiedliche Kombinationen von Filtern entstehen können, hinzugefügt, wird die Link Power all dieser Unterseiten auf die kanonische URL gebündelt und Google weiß, welche Seite in den SERPs angezeigt werden soll.

Der Canonical Tag ist somit eine einfache Lösung, um Suchmaschinen Crawler zu dem Inhalt zu führen, den sie indexieren sollen.

Verschwendung von Crawl Budget

Google crawlt pro Website nur eine bestimmte Anzahl an URLs. Diese Menge an URLs wird Crawl Budget genannt. Mehr Informationen dazu finden sich im Seobility Blog.

Hat eine Website durch die Verwendung von URL-Parametern viele crawlbare URLs, so kann es passieren, dass Googlebot das Crawl Budget für die falschen Seiten verbraucht. Eine Methode, diesem Problem vorzubeugen, ist die robots.txt. Darin kann festgelegt werden, dass der Googlebot URLs mit bestimmten Parametern nicht crawlen soll.

Unleserliche URLs

Zuviele Parameter in URLs können dazu führen, dass die URL für Nutzer schlecht zu lesen und schwer zu merken ist. Im schlimmsten Fall kann das Usability und der Click-Through-Rate schaden.

Grundsätzlich kann sowohl Duplicate Content als auch Problemen mit Crawl Budget zumindest teilweise vorgebeugt werden, indem überflüssige Parameter in einer URL vermieden werden.

Weiterführende Links

Ähnliche Artikel

Über den Autor
Seobility S
Das Seobility Wiki Team besteht aus SEO-, Online-Marketing- und Web-Experten mit praktischer Erfahrung in den Bereichen Suchmaschinenoptimierung, Online-Marketing und Webentwicklung. Alle unsere Artikel durchlaufen einen mehrstufigen Redaktionsprozess, um Dir die bestmögliche Qualität und wirklich hilfreiche Informationen bieten zu können. Mehr Informationen über das Seobility Wiki Team.

Überprüfen Sie Ihre Webseite mit
dem SEO Check!