it-swarm-eu.dev

Jak nastavím doménu bez souborů cookie?

Četl jsem, že pro lepší výkon je nejlepší zobrazovat statický obsah (css, javascript atd.) Z domény nebo subdomény bez souborů cookie. Předpokládám, že doména není ve výchozím nastavení bez souborů cookie. Jak mohu určit, že nechci používat cookies?

24
BenV

Když vám věci jako YSlow a Rychlost stránky řeknou, abyste nastavili domény bez souborů cookie, co to vlastně znamenají, je doručování médií z domény, kde už žádné nenastavíte, nebo v minulosti nenastavili žádné (globálně). Někdy toho lze dosáhnout pomocí subdomén, například media.domain.com nebo static.domain.com, ale pokud nastavíte cookie na domain.com, které se vztahuje na doménu jako celek - cookie pro *.domain.com - potom bude tento soubor cookie odeslán klientem zpět na server při každé žádosti o každou doménu spojenou s domain.com . To zahrnuje všechny subdomény.

Globální cookie se stane problémem, pokud se rozhodnete vzdát se používání www. ve vaší doméně. Aby cookie nemohla nastavit konkrétní subdoménu, musí být všechny soubory cookie nastaveny na *.domain.com, aby mohly fungovat.

Tento globální problém s cookies způsobuje, že na YouTube uvidíte statická média z míst jako ytimg.com. ytimg.com nikdy nebude obsluhovat dynamický obsah, který může nastavovat cookies, což znamená, že žádný cookie pro nikdy nebude odeslán z klienta zpět na server, pokud jsou tyto domény součástí HTTP požadavků.

Pokud jste si jisti, že pro *.domain.com nikdy nebudete mít nastaven soubor cookie, můžete pro své potřeby použít subdoménu. Mějte na paměti, že většinu času, pokud se integrujete s jiným webem nebo službou přes Javascript, nastaví soubory cookie globální domény.

V Apache (a jsem si jistý, že každý další webový server) můžete před odpovědí na požadavky nastavit nebo zrušit záhlaví. Tím se nevyřeší problém klienta, který soubor cookie odesílá na váš server, ale to zabrání tomu, aby vaše domény nikdy odesílaly nebo původně nastavovaly soubory cookie. Problém je pouze v případě, že poskytujete obsah, který není statický z domén bez souborů cookie, což narušuje jejich účel.

Header unset Cookie
Header unset Set-Cookie 

Tím se zruší záhlaví existujících souborů cookie a vytváření nových souborů cookie. Opět platí, pouze pokud poskytujete obsah ze statických domén, který by mohl potenciálně nastavit soubor cookie. Umístěte jej do konfigurace svého webu nebo virtuálního hostitele (což může být libovolný počet míst v závislosti na vašem operačním systému, serveru a verzi).

26
Bryson

Jak mohu určit, že nechci používat cookies?

Nejde o to, co musíte udělat, abyste měli doménu bez kuchařů - je to spíše o tom, co musíte ne - udělat ... Chcete-li mít kuchařskou doménu, musíte se ujistit, že aplikace spuštěná v této doméně nenastavuje žádné soubory cookie . To obvykle znamená, že nemáte přihlašovací údaje, nemáte analytiku google, neuskutečňujete relace - tj. Pouze slouží média a nic jiného. To samozřejmě závisí na vašem nastavení.

Jednou chybou, kterou jsem nedávno udělal, bylo to, že jsem nerozlišoval mezi doménou a subdoménou. Začal jsem obsluhovat všechna svá média z http://media.example.com a myslel jsem, že to byla doména bez kuchařství, ale ve skutečnosti je to sub - doména a našel jsem mnoho z mých cookies z hlavního webu http://www.example.com, kde jsou nastaveny na úrovni domény, a proto znečišťují moji domněle beznadějnou subdoménu. Zde je odkaz, jak jsem tento problém vyřešil: https://serverfault.com/questions/160210/nginx-serve-static-content-from-a-cookieless-domain

6
Tom

Jak mohu určit, že nechci používat cookies?

Nemusíte určovat, že nechcete používat cookies, prostě je nepoužíváte.

3
delete