HTTP ETag
ETag (a szervezet tag , mint a " entitásazonosítő ) egy fejléc mező be a HTTP 1.1 . A kért erőforrás változásainak meghatározására szolgál, és főként gyorsítótárazáshoz , azaz a redundáns adatátvitel elkerülésére szolgál.
leírás
Az ETag értéke bármely idézőjelbe foglalt karakterlánc, amelyet W/gyenge ETagként is azonosíthatunk „ ” előtaggal . A meghatározó BNF :
ETag = "ETag" ":" entity-tag entity-tag = [ weak ] opaque-tag weak = "W/" opaque-tag = quoted-string
- Erős ETag
- Az erős ETag-ot csak egy erőforrás több entitása kezelheti, ha azok teljesen azonosak (bitről bitre).
- Gyenge ETag
- A "
W/" előtaggal azonosított "gyenge ETag-ot az erőforrás több entitása is felhasználhatja, ha ezek egyenértékűek egymással, vagyis szemantikai szempontból nem különböznek jelentősen.
Gyakran alkalommal , a termelés a ETag érték alapja a lenyomatát az erőforrás tartalmának, illetve ha utolsó módosítása.
eljárás
Az első alkalommal, amikor egy erőforrást igényel, a szerver az ennek az erőforrásnak megfelelő ETag-értéket küld a ETagfejléc mezőbe, amelyet az ügyfél az erőforrással együtt helyileg elment. (1. ábra) Ha ugyanazt az erőforrást újból kéri, az ügyfél elküldi If-None-Matcha korábban mentett ETag értéket a fejléc mezőbe . (2. ábra) A szerver oldalon az elküldött ETag értéket összehasonlítjuk az aktuális értékkel, és ha egyezik, akkor megválaszoljuk a 304 állapotkódot . (3. ábra) Ebben az esetben az erőforrás adatait nem küldjük el, és az ügyfél a helyileg elmentett adatokat használja.
Problémák
Az ETag nem megfelelő hatással lehet, ha nem megfelelő módon valósítják meg: Ha például az ETag a kézbesítendő dokumentum inode- jából jön létre, akkor ez az érték csak ezen a rendszeren érvényes. Ha a dokumentumot mostantól több szerver kézbesíti (például a szerver terheléselosztása céljából ), akkor az ügyféltől érkező új kérést egy másik, eltérő ETag értékű kiszolgáló feldolgozhatja, ami viszont ugyanazt a fájlt továbbítja az ETagok ellenére. Ezért az ETag-érték előállításakor nem ajánlott az inode használata.
Például a fájl tartalmának hash értékét vagy a fájl egyedi verziószámát kell használni az ETag létrehozásához .
Ezenkívül a felhasználók azonosíthatók az ETag használatával, ha egy webszerver kliensspecifikus ETagokat generál.
web Linkek
- ETagolja be a W3C HTTP 1.1 specifikációját
- Apache HTTP kiszolgáló dokumentáció - FileETag irányelv
- lighttpd szerver dokumentációja - etag.use-inode
Egyéni bizonyíték
- ↑ A nem törölhető cookie lehetővé teszi a böngésző azonosítását , amely 2013. november 26-án érhető el
- ↑ Felhasználói nyomon követés az interneten: A kutató alattomos nyomkövetési technológiára figyelmeztet , hozzáférés: 2013. november 29
