Kache ya Kurasa, CDN na Mabango ya Idhini: Jinsi ya Kuepuka Kuonyesha Hali Isiyo Sahihi ya Idhini

Kurasa za Haraka, Idhini Isiyo Sahihi

Kuhifadhi kurasa kwenye kache ni mojawapo ya mambo bora unayoweza kufanya kwa kasi na gharama za upangishaji. Pia ni mojawapo ya njia rahisi zaidi za kuharibu usanidi wa idhini bila kujua. Kache hufanya hasa kile inachoambiwa: huhifadhi jibu mara moja na kulitoa kwa kila mtu anayelingana na ufunguo uleule. Jibu lililohifadhiwa likiwa na chochote mahususi kwa chaguo la idhini au eneo la mgeni mmoja, mgeni anayefuata pia hukipokea.

Mwongozo huu unahusu tabaka za kache zinazokaa kwa kawaida mbele ya tovuti ya mchapishaji — kache za pembeni za CDN, programu jalizi za kache ya ukurasa mzima, reverse proxy, service worker na kivinjari chenyewe — na jinsi ya kuzuia kila moja isitoe uzoefu usio sahihi wa idhini.

Kanuni ya Msingi: Weka Idhini Nje ya HTML Iliyohifadhiwa

Usanifu salama zaidi huunda ukurasa wa HTML uliohifadhiwa kuwa usio na upande wowote kuhusu idhini. Ukurasa una kipakiaji cha CMP na lebo zako katika hali ya kuzuiwa au kusubiri, lakini hakuna uamuzi kuhusu mgeni huyu mahususi. CMP kisha huendeshwa kwenye kivinjari, husoma chaguo lililohifadhiwa, huamua kama itaonyesha bango, na hutoa lebo ipasavyo.

Matatizo huanza seva inapofanya maamuzi ya idhini wakati wa kuunda ukurasa, kwa mfano:

Ukurasa huo ukishahifadhiwa kwenye kache, hali ya mgeni wa kwanza huwa hali ya kila mtu. Mgeni aliyekataa ufuatiliaji anaweza kupokea ukurasa wenye lebo tayari zinafanya kazi, au mgeni mpya asione bango kamwe kwa sababu nakala iliyohifadhiwa ilitoka kwa mtu aliyekwisha kulifunga.

Kwa Nini “Vary: Cookie” Mara Chache Ndiyo Jibu

Suluhisho la kitabuni kwa maudhui ya kila mgeni ni kuzielekeza kache zibadilike kulingana na kichwa cha cookie. Kwa vitendo, wageni hubeba vidakuzi vingi vyenye thamani za kipekee, kwa hiyo kubadilika kulingana na kichwa chote cha cookie kwa kawaida hushusha kiwango chako cha kache kupatikana karibu hadi sifuri. CDN zingine hukuruhusu kujenga ufunguo wa kache kutoka kwa thamani ya kidakuzi kimoja badala yake, jambo linalowezekana ikiwa kidakuzi chako cha idhini kina hali chache zinazowezekana, lakini huongeza utata na bado huzidisha idadi ya nakala zilizohifadhiwa. Kuhamishia uamuzi kwenye kivinjari ni rahisi zaidi na huiweka kache ikiwa na ufanisi.

Jiografia Pembeni (Edge)

Wachapishaji wengi huonyesha mabango tofauti kulingana na eneo: bango la opt-in kwa EU na Uingereza, notisi ya kujiondoa kwa majimbo ya Marekani, na kitu chepesi zaidi kwingineko. Seva ikichagua toleo kutoka kwa anwani ya IP ya mgeni na ukurasa huo ukahifadhiwa, msomaji wa Ulaya anaweza kupokea ukurasa wa Marekani ulio kwenye kache, au kinyume chake.

Mifumo mitatu huepuka hili:

  1. Jiografia ya upande wa mteja. Acha CMP ibaini eneo kwenye kivinjari, ili HTML iliyohifadhiwa ibaki ileile kwa kila mtu.
  2. Nchi kwenye ufunguo wa kache. Ikiwa lazima uamue pembeni, jumuisha msimbo wa nchi unaotolewa na CDN yako kwenye ufunguo wa kache. Unapata nakala moja iliyohifadhiwa kwa kila nchi, jambo linalotabirika.
  3. Mantiki ya pembeni isiyohifadhiwa. Endesha uamuzi wa kikanda kwenye kitendakazi cha pembeni kinachoingiza thamani ndogo isiyohifadhiwa kwenye ukurasa ambao vinginevyo umehifadhiwa.

Chochote utakachochagua, kiandike. Hitilafu za jiografia ni miongoni mwa zile ngumu zaidi kuzirudia, kwa sababu huonekana tu kwa wageni wa eneo moja wanaotokea kupokea ukurasa uliohifadhiwa na mtu wa eneo jingine.

Kuhifadhi Hati ya CMP Yenyewe

Kuhifadhi kipakiaji cha CMP kwa muda mrefu ni vizuri kwa utendaji, lakini kuna gharama usanidi unapobadilika. Ukisasisha wachuuzi, madhumuni au maandishi ya bango na hati au faili ya usanidi ikahifadhiwa kwa mwaka mmoja, baadhi ya wageni wataendelea kuona toleo la zamani. Angalia jinsi CMP yako inavyoweka matoleo ya faili zake: jina la faili linalobadilika au kigezo cha toleo hukuruhusu kuhifadhi kwa nguvu huku ukitoa mabadiliko mara moja. Pia thibitisha kuwa CDN yako haiondoi mifuatano ya hoja kutoka kwenye URL za hati za wahusika wengine ikiwa CMP inazitegemea.

Service Worker na Kache za Nje ya Mtandao

Tovuti zenye tabaka la programu ya wavuti inayoendelea (PWA) mara nyingi huhifadhi HTML kwenye service worker. Kanuni ileile inatumika: usihifadhi kamwe ukurasa unaoakisi uamuzi mahususi wa idhini. Tenga endpoint zinazohusiana na idhini na kurasa za kituo cha mapendeleo kutoka kwenye kache ya service worker, na hakikisha usanidi mpya wa CMP unaweza kupatikana kila wakati.

Kache ya Nyuma/Mbele (Back/Forward Cache)

Vivinjari vya kisasa huweka kurasa zilizotembelewa hivi karibuni kwenye kumbukumbu ili kitufe cha kurudi nyuma kizirejeshe papo hapo. Mgeni akifungua kituo cha mapendeleo kwenye ukurasa mmoja, akaondoa idhini, kisha akabonyeza kurudi nyuma, ukurasa uliorejeshwa unaweza bado kuwa na lebo zinazofanya kazi kutoka hali ya awali. Sikiliza tukio la pageshow na uangalie sifa yake ya persisted: ukurasa unaporejeshwa kutoka kwenye kache hii, soma tena hali ya idhini iliyohifadhiwa na usimamishe au uanzishe lebo ili zilingane.

Utaratibu wa Majaribio

Mambo Muhimu ya Kukumbuka

← Blogu Soma Zote →