Diskuze: Offline web - Manifest
V předchozím kvízu, Online test znalostí HTML a CSS, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 8 zpráv z 8.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |
V předchozím kvízu, Online test znalostí HTML a CSS, jsme si ověřili nabyté zkušenosti z kurzu.
Zkus nastudovat tady: http://diveintohtml5.info/offline.html
Ale pokud se jedná o offline verzi, tak to bude řešené tak že se vykreslí stránka s daty z databáze a takto hotová stránka se uloží do cache / manifestu /. Tak že určitě v případě že zařízení je v offline režimu, tak se nepřistupuje k databázi.
Takže vlastně když jsem Offline tak nemůžu používat databázi a ani PHP protože když jsem offline tak nemám server pro běh PHP.
Jenže JavaScript jde i bez serveru a data z databáze potřebuji. Ale teď nevím jestli by bylo výhodné si ty data místo databáze ukládat například jako JSON nebo do TXT soubor a nějakým formátováním a přes JavaScript s tím pracovat jako s takovou databází v souboru.
Jen nevím jestli po úpravě souboru v manifestu bude ten soubor nový nebo ještě starý, to mi přijde takové krkolomné, co myslíte?
Nutné je v tomto případě oddělit věci ke kterým potřebujeme server a ke kterým klienta.
Služby:
Apache (port 80, 443) - Slouží pro webové aplikace
MariaDB (port 3306) - Databázový server
Jak vidíš, tak pro to aby si mohl přistoupit k databázi, tak musíš vlastně z Apache se dostat k MariaDB. I přes to že to třeba běží na stejné mašině, tak musíš svázat spojení mezi porty 80 a 3306. A už zde je nějaké spojení které potřebuje internet.
Tak že cachovat - tedy vytvoření manifestu - můžeš jen se soubory které je možné načíst i na počítači pouze s webovým prohlížečem bez internetového spojení. Mezi tyto soubory se řadí klientské soubory, tedy ty co se zpracovávají u klienta - o to se stará prohlížeč. Mezi tyto soubory se řadí: HTML, CSS, JS, PDF, obrázky, videa,... PHP je nutné na serveru zpracovat / zkompilovat / spustit a následně pomocí hlaviček předat výsledek.
Řešil bych to tak, že bych přegeneroval manifest tak že bych se ptal pomocí AJAXu nějakého PHP souboru. Pokud načte data, překreslíš stránku - klient je online. Pokud vrátí 404, nebo něco jiného - klient je offline použije se manifest.
Jasně chápu, já sem přemýšlel že bych vlastně měl nějaký PHP
soubor, který by mi šel jen kdybych byl online a ten udělal takový update
manifestu a JSON souboru kde by byly ty data z databáze. A tím pádem bych je
mohl přes JavaScript používat jen u klienta bez serveru.. Jenomže sem se
teď asi 4h páral s tím JSONem a prostě mi to nejde nijak použít. Ani přes
JS ani Jquery ani AJAX to nejde.. Takže nejspíš si všechny data nahraju u JS
do proměný a to hodím do manifestu
nebo já už nevím.
Prostě na tý stránce i v offline verzi potřebuju nějak pracovat s těma datama, generování přes JS a tak podobně.
No abys mohl ale pracovat s JS / CSS offline, tak je nutné nastavit na serveru / htaccess hlavičky pro cache! Aby prohlížeč tyto soubory uložil do paměti.
Aha, a to jak?
Koukám že sem to trochu podcenil. Jsem myslel že to bude jednodužší.
O cache u klienta se stará v apache mod_expires - http://httpd.apache.org/…expires.html.
Zobrazeno 8 zpráv z 8.