<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=HTTP_ETag</id>
	<title>HTTP ETag - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=HTTP_ETag"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=HTTP_ETag&amp;action=history"/>
	<updated>2026-05-22T05:13:50Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=HTTP_ETag&amp;diff=1245569&amp;oldid=prev</id>
		<title>imported&gt;Aka: /* Weblinks */ Halbgeviertstrich</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=HTTP_ETag&amp;diff=1245569&amp;oldid=prev"/>
		<updated>2024-09-25T19:35:59Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Weblinks: &lt;/span&gt; Halbgeviertstrich&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;ETag&amp;#039;&amp;#039;&amp;#039; (für &amp;#039;&amp;#039;entity tag&amp;#039;&amp;#039;, etwa ‚[[Entität]]s-Kennzeichen‘) ist ein im [[Hypertext Transfer Protocol|HTTP 1.1]] eingeführtes [[Header]]-Feld. Es dient zur Bestimmung von Änderungen an der angeforderten [[Ressource#Informatik|Ressource]] und wird hauptsächlich zum [[HTTP Caching|Caching]], also der Vermeidung redundanter Datenübertragungen, verwendet.&lt;br /&gt;
&lt;br /&gt;
== Spezifikation ==&lt;br /&gt;
[[Datei:Etag header beispiele.png|gerahmt|rechts|Beispiel HTTP Header]]&lt;br /&gt;
Der ETag-Wert ist eine beliebige von Anführungszeichen umschlossene Zeichenkette, die zusätzlich durch das Präfix „&amp;lt;code&amp;gt;W/&amp;lt;/code&amp;gt;“ als schwaches ETag gekennzeichnet werden kann. Die spezifizierende [[Backus-Naur-Form|BNF]] dazu:&lt;br /&gt;
&lt;br /&gt;
 ETag = &amp;quot;ETag&amp;quot; &amp;quot;:&amp;quot; entity-tag&lt;br /&gt;
 entity-tag = [ weak ] opaque-tag&lt;br /&gt;
 weak       = &amp;quot;W/&amp;quot;&lt;br /&gt;
 opaque-tag = quoted-string&lt;br /&gt;
&lt;br /&gt;
; Starker ETag&lt;br /&gt;
: Ein starker ETag darf nur dann von mehreren Entitäten einer Ressource geführt werden, falls diese absolut identisch (Bit für Bit) sind.&lt;br /&gt;
; Schwacher ETag&lt;br /&gt;
: Ein schwacher ETag (durch „&amp;lt;code&amp;gt;W/&amp;lt;/code&amp;gt;“-Präfix gekennzeichnet) darf von mehreren Entitäten einer Ressource geführt werden, falls diese zueinander äquivalent sind, sich also semantisch nicht signifikant unterscheiden.&lt;br /&gt;
&lt;br /&gt;
Häufig basiert die Generierung des ETag-Werts auf dem [[Hashfunktion|Hash]] des Inhalts der Ressource oder dem Zeitpunkt der letzten Änderung.&lt;br /&gt;
&lt;br /&gt;
== Ablauf ==&lt;br /&gt;
Bei der ersten Anfrage einer Ressource sendet der [[Server]] einen für diese Ressource spezifischen ETag-Wert im &amp;lt;code&amp;gt;ETag&amp;lt;/code&amp;gt;-Header-Feld, der vom [[Client]] zusammen mit der Ressource lokal gespeichert wird. (Abb. 1)&lt;br /&gt;
Bei einer erneuten Anfrage derselben Ressource sendet der Client in dem Header-Feld &amp;lt;code&amp;gt;If-None-Match&amp;lt;/code&amp;gt; den zuvor gespeicherten ETag-Wert mit. (Abb. 2)&lt;br /&gt;
Auf der [[Server]]-Seite wird nun der gesendete ETag-Wert mit dem aktuellen verglichen und bei Übereinstimmung mit dem [[HTTP-Statuscode|Statuscode]] &amp;#039;&amp;#039;304&amp;#039;&amp;#039; beantwortet. (Abb. 3) Die Daten der Ressource werden in diesem Fall nicht mitgeschickt und der Client verwendet die lokal gespeicherten Daten.&lt;br /&gt;
&lt;br /&gt;
== Probleme ==&lt;br /&gt;
Bei ungeschickter Implementierung kann sich der ETag negativ auswirken: Wenn der ETag zum Beispiel aus der [[Inode]] des auszuliefernden Dokuments generiert wird, ist dieser Wert nur auf diesem System gültig. Wird das Dokument nun von mehreren Servern ausgeliefert (z.&amp;amp;nbsp;B. zwecks [[Lastverteilung (Informatik)|Server-Lastverteilung]]), so kann eine erneute Anfrage des Clients von einem anderen Server mit einem anderen ETag-Wert verarbeitet werden, was wiederum die Übertragung derselben Datei trotz ETags zur Folge hat. Aus diesem Grund wird empfohlen, die Inode bei der Generierung des ETag-Werts nicht zu verwenden.&lt;br /&gt;
&lt;br /&gt;
Zur Generierung des ETags sollte beispielsweise ein [[Hashwert]] über den Inhalt der Datei oder eine eindeutige Versionsnummer der Datei verwendet werden.&lt;br /&gt;
&lt;br /&gt;
Zudem können Anwender mittels ETag identifiziert werden, wenn ein Webserver client-individuelle ETags generiert.&amp;lt;ref&amp;gt;[https://www.teltarif.de/etag-http-browser-tracking-fingerpring-addon-schutz/news/53395.html Nicht löschbarer Cookie erlaubt Browser-Identifikation.] teltarif.de; abgerufen am 26. November 2013&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;[https://heise.de/-2048507 User-Tracking im Web: Forscher warnt vor heimtückischer Tracking-Technik.] heise.de; abgerufen am 29. November 2013&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Weblinks ==&lt;br /&gt;
* {{RFC-Internet |RFC=2616 |Titel=Hypertext Transfer Protocol – HTTP/1.1 |Datum=1999-06 |Abschnitt=14.19 |Abschnittstitel=ETag}}&lt;br /&gt;
* [https://httpd.apache.org/docs/2.2/mod/core.html#fileetag FileETag-Direktive.] Apache-HTTP-Server-Dokumentation.&lt;br /&gt;
* [https://redmine.lighttpd.net/projects/lighttpd/wiki/Etag.use-inodeDetails etag.use-inode.] lighttpd-Server-Dokumentation.&lt;br /&gt;
* [https://www.seolizer.de/etag-check.html ETag-Checker] – Ein kostenloser Checker, der die korrekte Konfiguration des ETags kontrollieren kann.&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:HTTP]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Aka</name></author>
	</entry>
</feed>