{"id":54566,"date":"2019-12-29T00:00:00","date_gmt":"2019-12-28T21:00:00","guid":{"rendered":"https:\/\/prohoster.info\/blog\/blog_prohoster\/samostoyatelnyj-hosting-storonnih-resursov-horoshij-plohoj-zloj"},"modified":"2020-02-18T14:02:35","modified_gmt":"2020-02-18T11:02:35","slug":"samostoyatelnyj-hosting-storonnih-resursov-horoshij-plohoj-zloj","status":"publish","type":"post","link":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/samostoyatelnyj-hosting-storonnih-resursov-horoshij-plohoj-zloj","title":{"rendered":"Samostatn\u00fd hosting extern\u00edch zdroj\u016f: dobr\u00fd, \u0161patn\u00fd, zl\u00fd","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>V posledn\u00edch letech st\u00e1le v\u00edce platforem pro optimalizaci frontendov\u00fdch projekt\u016f nab\u00edz\u00ed mo\u017enosti samostatn\u00e9ho hostov\u00e1n\u00ed nebo proxy t\u0159et\u00edch stran. Akamai umo\u017e\u0148uje nastavit <noindex><a rel=\"nofollow\" href=\"https:\/\/community.akamai.com\/customers\/s\/article\/5-ways-to-prevent-slow-3rd-party-front-end-services?language=en_US\">specifick\u00e9 parametry<\/a><\/noindex> pro samostatn\u011b vytv\u00e1\u0159en\u00e9 URL. U Cloudflare existuje technologie Edge Workers. Fasterzine m\u016f\u017ee <noindex><a rel=\"nofollow\" href=\"https:\/\/www.fasterize.com\/en\/blog\/https-the-impact-on-your-loading-times\/\">p\u0159episovat<\/a><\/noindex> URL na str\u00e1nk\u00e1ch tak, aby ukazovala na t\u0159et\u00ed strany, kter\u00e9 se nach\u00e1zej\u00ed na hlavn\u00ed dom\u00e9n\u011b webu.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/481574\/\"><img decoding=\"async\" alt=\"Samostatn\u00fd hosting extern\u00edch zdroj\u016f: dobr\u00fd, \u0161patn\u00fd, zl\u00fd\" src=\"\/wp-content\/uploads\/2019\/12\/61f87db89ba8c5f4bf030a4004df56f3.png\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p>Pokud v\u00edte, \u017ee slu\u017eby t\u0159et\u00edch stran pou\u017e\u00edvan\u00e9 ve va\u0161em projektu se nem\u011bn\u00ed p\u0159\u00edli\u0161 \u010dasto a \u017ee proces jejich dod\u00e1v\u00e1n\u00ed klient\u016fm m\u016f\u017ee b\u00fdt vylep\u0161en, ur\u010dit\u011b p\u0159em\u00fd\u0161l\u00edte o proxy takov\u00fdch slu\u017eeb. Takov\u00fd p\u0159\u00edstup v\u00e1m m\u016f\u017ee \"p\u0159ibl\u00ed\u017eit\" tyto zdroje k u\u017eivatel\u016fm a z\u00edskat plnou kontrolu nad jejich ukl\u00e1d\u00e1n\u00edm do cache na stran\u011b klienta. To nav\u00edc chr\u00e1n\u00ed u\u017eivatele p\u0159ed probl\u00e9my zp\u016fsoben\u00fdmi \"v\u00fdpadkem\" slu\u017eby t\u0159et\u00ed strany nebo zhor\u0161en\u00edm jej\u00edho v\u00fdkonu.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>Dobr\u00e9: zv\u00fd\u0161en\u00ed v\u00fdkonu<\/h2>\n<p>\nSamostatn\u00e9 hostov\u00e1n\u00ed ciz\u00edch zdroj\u016f zlep\u0161uje v\u00fdkon zcela z\u0159ejm\u00fdm zp\u016fsobem. Prohl\u00ed\u017ee\u010di nen\u00ed pot\u0159eba znovu se obracet na DNS, nemus\u00ed navazovat TCP spojen\u00ed a vykon\u00e1vat TLS handshake na dom\u00e9n\u011b t\u0159et\u00ed strany. Jak samostatn\u00e9 hostov\u00e1n\u00ed ciz\u00edch zdroj\u016f ovliv\u0148uje v\u00fdkon, lze vid\u011bt porovn\u00e1n\u00edm dvou n\u00e1sleduj\u00edc\u00edch obr\u00e1zk\u016f.<\/p>\n<p><img decoding=\"async\" alt=\"Samostatn\u00fd hosting extern\u00edch zdroj\u016f: dobr\u00fd, \u0161patn\u00fd, zl\u00fd\" src=\"\/wp-content\/uploads\/2019\/12\/ee0a0ccb712a873d10b8de0dbc7ef84a.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Ciz\u00ed zdroje se na\u010d\u00edtaj\u00ed z extern\u00edch zdroj\u016f (vzal <noindex><a rel=\"nofollow\" href=\"https:\/\/csswizardry.com\/2019\/05\/self-host-your-static-assets\/\">odsud<\/a><\/noindex>)<\/i><\/p>\n<p><img decoding=\"async\" alt=\"Samostatn\u00fd hosting extern\u00edch zdroj\u016f: dobr\u00fd, \u0161patn\u00fd, zl\u00fd\" src=\"\/wp-content\/uploads\/2019\/12\/e9ee0b858dbb1aa7c6476d8bf954fc62.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Ciz\u00ed zdroje se ukl\u00e1daj\u00ed ve stejn\u00e9m m\u00edst\u011b jako ostatn\u00ed materi\u00e1ly webu (vzal <noindex><a rel=\"nofollow\" href=\"https:\/\/csswizardry.com\/2019\/05\/self-host-your-static-assets\/\">odsud<\/a><\/noindex>)<\/i><\/p>\n<p>Situaci nav\u00edc vylep\u0161uje to, \u017ee prohl\u00ed\u017ee\u010d vyu\u017eije schopnosti multiplexov\u00e1n\u00ed a prioritizace dat HTTP\/2 spojen\u00ed, kter\u00e9 ji\u017e bylo nav\u00e1z\u00e1no s hlavn\u00ed dom\u00e9nou.<\/p>\n<p>Pokud nebudete m\u00edt ciz\u00ed zdroje um\u00edst\u011bny na sv\u00e9m webu, budou se na\u010d\u00edtat z dom\u00e9ny, odli\u0161n\u00e9 od hlavn\u00ed, a nebude mo\u017en\u00e9 je prioritizovat. To povede k tomu, \u017ee si budou konkurovat navz\u00e1jem o \u0161\u00ed\u0159ku p\u00e1sma klienta. M\u016f\u017ee se to projevit t\u00edm, \u017ee doba na\u010d\u00edt\u00e1n\u00ed materi\u00e1l\u016f, kter\u00e9 jsou kriticky d\u016fle\u017eit\u00e9 pro formov\u00e1n\u00ed str\u00e1nky, bude mnohem del\u0161\u00ed, ne\u017e doba dosa\u017eiteln\u00e1 za ide\u00e1ln\u00edch okolnost\u00ed. <noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/watch?v=nOW-i6bbRdo\">Tady<\/a><\/noindex> prezentace o prioritizaci HTTP\/2, ve kter\u00e9 je to v\u0161echno velmi dob\u0159e vysv\u011btleno.<\/p>\n<p>M\u016f\u017eeme p\u0159edpokl\u00e1dat, \u017ee pou\u017eit\u00ed atribut\u016f v odkazech na extern\u00ed zdroje <code>preconnect<\/code> pom\u016f\u017ee vy\u0159e\u0161it probl\u00e9m. Pokud v\u0161ak bude t\u011bchto odkaz\u016f na r\u016fzn\u00e9 dom\u00e9ny p\u0159\u00edli\u0161 mnoho, m\u016f\u017ee to ve skute\u010dnosti p\u0159et\u00ed\u017eit komunika\u010dn\u00ed linku v nejkriti\u010dt\u011bj\u0161\u00edm okam\u017eiku.<\/p>\n<p>Pokud hostingujete extern\u00ed zdroje sami, m\u016f\u017eete \u0159\u00eddit to, jak se tyto zdroje klientovi poskytuj\u00ed. A to konkr\u00e9tn\u011b zahrnuje n\u00e1sleduj\u00edc\u00ed:<\/p>\n<ul>\n<li>M\u016f\u017eete zajistit pou\u017eit\u00ed algoritmu komprese dat, kter\u00fd nejl\u00e9pe vyhovuje ka\u017ed\u00e9mu prohl\u00ed\u017ee\u010di (Brotli\/gzip).<\/li>\n<li>M\u016f\u017eete zv\u00fd\u0161it dobu cachov\u00e1n\u00ed zdroj\u016f, kter\u00e1 je obvykle, i u nejzn\u00e1m\u011bj\u0161\u00edch poskytovatel\u016f, pom\u011brn\u011b mal\u00e1 (nap\u0159\u00edklad odpov\u00eddaj\u00edc\u00ed hodnota pro tag GA je nastavena na 30 minut).<\/li>\n<\/ul>\n<p>\nM\u016f\u017eete dokonce prodlou\u017eit ukazatel TTL pro zdroj, nap\u0159\u00edklad na rok, a zahrnout odpov\u00eddaj\u00edc\u00ed materi\u00e1ly do sv\u00e9 strategie spr\u00e1vy cache (URL-hashe, verzov\u00e1n\u00ed atd.). O tom budeme hovo\u0159it n\u00ed\u017ee.<\/p>\n<h3>\u258dOchrana p\u0159ed v\u00fdpadky extern\u00edch slu\u017eeb nebo jejich odpojen\u00edm<\/h3>\n<p>\nDal\u0161\u00ed zaj\u00edmav\u00fd aspekt samostatn\u00e9ho hostingu extern\u00edch zdroj\u016f spo\u010d\u00edv\u00e1 v tom, \u017ee to umo\u017e\u0148uje zm\u00edrnit rizika spojen\u00e1 s v\u00fdpadky extern\u00edch slu\u017eeb. P\u0159edpokl\u00e1dejme, \u017ee pou\u017eit\u00e9 extern\u00ed \u0159e\u0161en\u00ed pro A\/B testov\u00e1n\u00ed je implementov\u00e1no jako blokuj\u00edc\u00ed skript, kter\u00fd se na\u010d\u00edt\u00e1 v hlavi\u010dce str\u00e1nky. Tento skript se na\u010d\u00edt\u00e1 pomalu. Pokud se p\u0159\u00edslu\u0161n\u00fd skript nena\u010dte, str\u00e1nka z\u016fstane pr\u00e1zdn\u00e1. Pokud jeho na\u010dten\u00ed zabere hodn\u011b \u010dasu, str\u00e1nka se objev\u00ed s velk\u00fdm zpo\u017ed\u011bn\u00edm. Nebo p\u0159edpokl\u00e1dejme, \u017ee se v projektu pou\u017e\u00edv\u00e1 knihovna na\u010d\u00edtan\u00e1 z extern\u00edho CDN zdroje. P\u0159edstavme si, \u017ee tento zdroj za\u017eil v\u00fdpadek nebo byl zablokov\u00e1n v n\u011bjak\u00e9 zemi. Takov\u00e1 situace by vedla k naru\u0161en\u00ed logiky fungov\u00e1n\u00ed webu.<\/p>\n<p>Abyste zjistili, jak v\u00e1\u0161 web funguje v p\u0159\u00edpad\u011b nedostupnosti n\u011bjak\u00e9 extern\u00ed slu\u017eby, m\u016f\u017eete vyu\u017e\u00edt sekci SPOF na <noindex><a rel=\"nofollow\" href=\"https:\/\/www.webpagetest.org\/\">webpagetest.org<\/a><\/noindex>.<\/p>\n<p><img decoding=\"async\" alt=\"Samostatn\u00fd hosting extern\u00edch zdroj\u016f: dobr\u00fd, \u0161patn\u00fd, zl\u00fd\" src=\"\/wp-content\/uploads\/2019\/12\/0ffa0b44054ccd16bab33c6b7beff049.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Sekce SPOF na webpagetest.org<\/i><\/p>\n<h3>\u258dJak to vypad\u00e1 s probl\u00e9my s cachov\u00e1n\u00edm materi\u00e1l\u016f v prohl\u00ed\u017ee\u010d\u00edch? (n\u00e1pov\u011bda: to je m\u00fdtus)<\/h3>\n<p>\nM\u016f\u017eete si myslet, \u017ee pou\u017eit\u00ed ve\u0159ejn\u00fdch CDN automaticky zlep\u0161\u00ed v\u00fdkon zdroj\u016f, proto\u017ee tyto slu\u017eby maj\u00ed dostate\u010dn\u011b kvalitn\u00ed s\u00edt\u011b a jsou rozlo\u017eeny po cel\u00e9m sv\u011bt\u011b. Ale ve skute\u010dnosti je to trochu slo\u017eit\u011bj\u0161\u00ed.<\/p>\n<p>P\u0159edstavme si, \u017ee m\u00e1me n\u011bkolik r\u016fzn\u00fdch webov\u00fdch str\u00e1nek: website1.com, website2.com, website3.com. Na v\u0161ech t\u011bchto str\u00e1nk\u00e1ch pou\u017e\u00edv\u00e1me knihovnu jQuery. P\u0159ipojujeme ji pomoc\u00ed CDN, nap\u0159\u00edklad \u2013 googleapis.com. Mohli bychom o\u010dek\u00e1vat, \u017ee prohl\u00ed\u017ee\u010d ji jednou na\u010dte a vyrovn\u00e1 ji do cache, a pot\u00e9 ji pou\u017eije p\u0159i pr\u00e1ci se v\u0161emi t\u0159emi weby. To by mohlo sn\u00ed\u017eit zat\u00ed\u017een\u00ed s\u00edt\u011b. Mo\u017en\u00e1 to n\u011bkde u\u0161et\u0159\u00ed a pom\u016f\u017ee zlep\u0161it v\u00fdkon zdroj\u016f. Z praktick\u00e9ho hlediska to v\u0161ak vypad\u00e1 jinak. Nap\u0159\u00edklad v Safari je implementov\u00e1na funkce zvan\u00e1 <noindex><a rel=\"nofollow\" href=\"https:\/\/webkit.org\/blog\/7675\/intelligent-tracking-prevention\/\">Intelligent Tracking Prevention<\/a><\/noindex>: v cache se pou\u017e\u00edvaj\u00ed dvojit\u00e9 kl\u00ed\u010de zalo\u017een\u00e9 na zdroji dokumentu a na zdroji t\u0159et\u00ed strany. <noindex><a rel=\"nofollow\" href=\"https:\/\/andydavies.me\/blog\/2018\/09\/06\/safari-caching-and-3rd-party-resources\/\">Tady<\/a><\/noindex> dobr\u00fd \u010dl\u00e1nek na toto t\u00e9ma.<\/p>\n<p>Star\u00e9 studie <noindex><a rel=\"nofollow\" href=\"https:\/\/yuiblog.com\/blog\/2007\/01\/04\/performance-research-part-2\/\">Yahoo<\/a><\/noindex> a <noindex><a rel=\"nofollow\" href=\"https:\/\/code.facebook.com\/posts\/964122680272229\/web-performance-cache-efficiency-exercise\/\">Facebook<\/a><\/noindex>, a tak\u00e9 nov\u011bj\u0161\u00ed <noindex><a rel=\"nofollow\" href=\"https:\/\/discuss.httparchive.org\/t\/analyzing-resource-age-by-content-type\/1659\">studie<\/a><\/noindex> Pola Calvano, ukazuj\u00ed, \u017ee zdroje nejsou uchov\u00e1v\u00e1ny v prohl\u00ed\u017ee\u010dov\u00fdch cachech tak dlouho, jak bychom mohli o\u010dek\u00e1vat: \u201eExistuje zna\u010dn\u00fd rozd\u00edl mezi dobou cachov\u00e1n\u00ed vlastn\u00edch a ciz\u00edch zdroj\u016f projektu. Jde o CSS a webov\u00e9 fonty. A konkr\u00e9tn\u011b, doba cachov\u00e1n\u00ed 95% vlastn\u00edch font\u016f p\u0159esahuje t\u00fdden, zat\u00edmco doba cachov\u00e1n\u00ed 50% ciz\u00edch font\u016f je m\u00e9n\u011b ne\u017e t\u00fdden! To d\u00e1v\u00e1 webov\u00fdm v\u00fdvoj\u00e1\u0159\u016fm d\u016fvod pro samostatn\u00e9 hostov\u00e1n\u00ed soubor\u016f font\u016f!\u201c<\/p>\n<p>V\u00fdsledkem je, \u017ee pokud budete hostit ciz\u00ed materi\u00e1ly, nebudete si v\u0161\u00edmat probl\u00e9m\u016f s v\u00fdkonem zp\u016fsoben\u00fdch prohl\u00ed\u017ee\u010dov\u00fdm cachov\u00e1n\u00edm.<\/p>\n<p>Nyn\u00ed, kdy\u017e jsme prozkoumali siln\u00e9 str\u00e1nky samostatn\u00e9ho hostov\u00e1n\u00ed ciz\u00edch zdroj\u016f, poj\u010fme si promluvit o tom, jak odli\u0161it dobr\u00e9 proveden\u00ed tohoto p\u0159\u00edstupu od \u0161patn\u00e9ho.<\/p>\n<h2>\u0160patn\u00e9: \u010f\u00e1bel se skr\u00fdv\u00e1 v detailech<\/h2>\n<p>\nP\u0159esunut\u00ed ciz\u00edch zdroj\u016f na vlastn\u00ed dom\u00e9nu nelze prov\u00e9st automaticky, ani\u017e byste se postarali o spr\u00e1vn\u00e9 cachov\u00e1n\u00ed t\u011bchto zdroj\u016f.<\/p>\n<p>Jedn\u00edm z hlavn\u00edch probl\u00e9m\u016f zde je doba cachov\u00e1n\u00ed. Nap\u0159\u00edklad informace o verz\u00edch jsou zahrnuty do n\u00e1zv\u016f ciz\u00edch skript\u016f p\u0159ibli\u017en\u011b takto: <code>jquery-3.4.1.js<\/code>. Takov\u00fd soubor se v budoucnu nezm\u011bn\u00ed, co\u017e nezp\u016fsob\u00ed \u017e\u00e1dn\u00e9 probl\u00e9my s jeho pam\u011bt\u00ed.<\/p>\n<p>Ale pokud se p\u0159i pr\u00e1ci se soubory nepou\u017e\u00edv\u00e1 n\u011bjak\u00e1 verziov\u00e1 sch\u00e9ma, mohou b\u00fdt ke\u0161ovan\u00e9 skripty, jejich\u017e obsah se m\u011bn\u00ed p\u0159i nezm\u011bn\u011bn\u00e9m n\u00e1zvu souboru, zastaral\u00e9. To m\u016f\u017ee p\u0159edstavovat v\u00e1\u017en\u00fd probl\u00e9m, proto\u017ee to nap\u0159\u00edklad neumo\u017e\u0148uje automatick\u00e9 prov\u00e1d\u011bn\u00ed oprav zabezpe\u010den\u00ed ve skriptech, kter\u00e9 by m\u011bly co nejd\u0159\u00edve dostat klienti. V\u00fdvoj\u00e1\u0159 se bude muset sna\u017eit tyto skripty v pam\u011bti aktualizovat. Nav\u00edc to m\u016f\u017ee zp\u016fsobit chyby v chodu aplikace, zp\u016fsoben\u00e9 t\u00edm, \u017ee k\u00f3d pou\u017e\u00edvan\u00fd klientem z pam\u011bti se li\u0161\u00ed od nov\u00e9 verze k\u00f3du, na kterou je serverov\u00e1 \u010d\u00e1st projektu nastavena.<\/p>\n<p>Pravda, pokud mluv\u00edme o materi\u00e1lech, kter\u00e9 se \u010dasto aktualizuj\u00ed (spr\u00e1vci zna\u010dek, \u0159e\u0161en\u00ed pro A\/B testov\u00e1n\u00ed), jejich cachov\u00e1n\u00ed na CDN je \u00fakol sice \u0159e\u0161iteln\u00fd, ale mnohem slo\u017eit\u011bj\u0161\u00ed. Slu\u017eby jako Commanders Act, \u0159e\u0161en\u00ed pro spr\u00e1vu zna\u010dek, p\u0159i publikov\u00e1n\u00ed nov\u00fdch verz\u00ed pou\u017e\u00edvaj\u00ed webhooky. To umo\u017e\u0148uje organizovat vypr\u00e1zdn\u011bn\u00ed cache na CDN, nebo co je je\u0161t\u011b lep\u0161\u00ed, umo\u017e\u0148uje vyvol\u00e1n\u00ed aktualizace hashe nebo verze URL.<\/p>\n<h3>\u258d Adaptivn\u00ed poskytov\u00e1n\u00ed materi\u00e1l\u016f klient\u016fm<\/h3>\n<p>\nKdy\u017e mluv\u00edme o cache, je t\u0159eba tak\u00e9 zohlednit skute\u010dnost, \u017ee nastaven\u00ed cache pou\u017e\u00edvan\u00e1 na CDN nemusej\u00ed vyhovovat n\u011bkter\u00fdm extern\u00edm zdroj\u016fm. Nap\u0159\u00edklad tyto zdroje mohou pou\u017e\u00edvat technologii sn\u00edm\u00e1n\u00ed u\u017eivatelsk\u00e9ho agenta (user agent sniffing, adaptive serving) k vyd\u00e1v\u00e1n\u00ed konkr\u00e9tn\u00edm prohl\u00ed\u017ee\u010d\u016fm verze materi\u00e1l\u016f optimalizovan\u00fdch speci\u00e1ln\u011b pro tyto prohl\u00ed\u017ee\u010de. Tyto technologie pro zji\u0161t\u011bn\u00ed schopnost\u00ed prohl\u00ed\u017ee\u010de spol\u00e9haj\u00ed na regul\u00e1rn\u00ed v\u00fdrazy nebo datab\u00e1zi, ve kter\u00e9 jsou shrom\u00e1\u017ed\u011bny informace o HTTP hlavi\u010dce. <code>User-Agent<\/code>. Zjistiv\u0161e, s jak\u00fdm prohl\u00ed\u017ee\u010dem maj\u00ed co do \u010din\u011bn\u00ed, vyd\u00e1vaj\u00ed mu materi\u00e1ly, kter\u00e9 jsou pro n\u011bj ur\u010den\u00e9.<\/p>\n<p>M\u016f\u017eeme si p\u0159ipomenout dv\u011b slu\u017eby. Prvn\u00ed je googlefonts.com. Druh\u00e1 je polyfill.io. Slu\u017eba Google Fonts poskytuje pro ur\u010dit\u00fd zdroj r\u016fzn\u00fd CSS k\u00f3d, kter\u00fd z\u00e1vis\u00ed na schopnostech prohl\u00ed\u017ee\u010de (d\u00e1v\u00e1 odkazy na woff2 zdroje, pou\u017e\u00edvaj\u00edc\u00ed <code>unicode-range<\/code>).<\/p>\n<p>Tady jsou v\u00fdsledky n\u011bkolika dotaz\u016f na Google Fonts proveden\u00fdch z r\u016fzn\u00fdch prohl\u00ed\u017ee\u010d\u016f.<\/p>\n<p><img decoding=\"async\" alt=\"Samostatn\u00fd hosting extern\u00edch zdroj\u016f: dobr\u00fd, \u0161patn\u00fd, zl\u00fd\" src=\"\/wp-content\/uploads\/2019\/12\/5078ce754cc324e42261a1749e96a445.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>V\u00fdsledek dotazu na Google Fonts proveden\u00fd z Chrome<\/i><\/p>\n<p><img decoding=\"async\" alt=\"Samostatn\u00fd hosting extern\u00edch zdroj\u016f: dobr\u00fd, \u0161patn\u00fd, zl\u00fd\" src=\"\/wp-content\/uploads\/2019\/12\/103de3c523a05fdfa230ada49842f124.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>V\u00fdsledek dotazu na Google Fonts proveden\u00fd z IE10<\/i><\/p>\n<p>Polyfill.io poskytuje prohl\u00ed\u017ee\u010di pouze ty polyfily, kter\u00e9 pot\u0159ebuje. D\u011bl\u00e1 se tak z d\u016fvod\u016f v\u00fdkonnosti.<\/p>\n<p>Nap\u0159\u00edklad se pod\u00edvejme, co se stane, pokud provedeme n\u00e1sleduj\u00edc\u00ed dotaz z r\u016fzn\u00fdch prohl\u00ed\u017ee\u010d\u016f: <noindex><a rel=\"nofollow\" href=\"https:\/\/polyfill.io\/v3\/polyfill.js?features=default\">https:\/\/polyfill.io\/v3\/polyfill.js?features=default<\/a><\/noindex><\/p>\n<p>Na takov\u00fd dotaz proveden\u00fd z IE10 doraz\u00ed 34 kB dat. Odpov\u011b\u010f na n\u011bj provedenou z Chrome bude pr\u00e1zdn\u00e1.<\/p>\n<h2>Zl\u00fd: n\u011bkter\u00e9 \u00favahy o ochran\u011b soukrom\u00ed<\/h2>\n<p>\nTento bod je posledn\u00ed v po\u0159ad\u00ed, ale nikoli v d\u016fle\u017eitosti. Hovo\u0159\u00edme o tom, \u017ee samostatn\u00e9 hostov\u00e1n\u00ed extern\u00edch zdroj\u016f na hlavn\u00ed dom\u00e9n\u011b projektu nebo na jeho subdom\u00e9n\u011b m\u016f\u017ee ohrozit soukrom\u00ed u\u017eivatel\u016f a negativn\u011b ovlivnit hlavn\u00ed webov\u00fd projekt.<\/p>\n<p>Pokud je va\u0161e CDN nastaveno \u0161patn\u011b, m\u016f\u017ee to skon\u010dit t\u00edm, \u017ee budete pos\u00edlat soubory cookies va\u0161\u00ed dom\u00e9ny extern\u00ed slu\u017eb\u011b. Pokud na \u00farovni CDN nebude zaji\u0161t\u011bno spr\u00e1vn\u00e9 filtrov\u00e1n\u00ed, mohou b\u00fdt va\u0161e relace cookies, kter\u00e9 norm\u00e1ln\u011b nelze pou\u017e\u00edt v JavaScriptu (s atributem <code>httponly<\/code>), odesl\u00e1ny na ciz\u00ed host.<\/p>\n<p>P\u0159esn\u011b to se m\u016f\u017ee st\u00e1t s trackery jako Eulerian nebo Criteo. Extern\u00ed trackery mohly nastavovat jedine\u010dn\u00fd identifik\u00e1tor do soubor\u016f cookies. Ty, pokud byly sou\u010d\u00e1st\u00ed obsahu str\u00e1nek, mohly \u010d\u00edst identifik\u00e1tor podle sv\u00e9ho uv\u00e1\u017een\u00ed p\u0159i pr\u00e1ci u\u017eivatele s r\u016fzn\u00fdmi webov\u00fdmi zdroji.<\/p>\n<p>Dnes v\u011bt\u0161ina prohl\u00ed\u017ee\u010d\u016f zahrnuje ochranu proti takov\u00e9mu chov\u00e1n\u00ed tracker\u016f. V\u00fdsledkem je, \u017ee nyn\u00ed trackery pou\u017e\u00edvaj\u00ed technologii <noindex><a rel=\"nofollow\" href=\"https:\/\/medium.com\/nextdns\/cname-cloaking-the-dangerous-disguise-of-third-party-trackers-195205dc522a\">CNAME Cloaking<\/a><\/noindex>, skr\u00fdvaj\u00ed se pod vlastn\u00edmi skripty r\u016fzn\u00fdch projekt\u016f. Konkr\u00e9tn\u011b trackery nab\u00edzej\u00ed majitel\u016fm webov\u00fdch str\u00e1nek, aby p\u0159idali do sv\u00fdch nastaven\u00ed CNAME pro n\u011bjakou dom\u00e9nu, jej\u00ed\u017e adresa obvykle vypad\u00e1 jako n\u00e1hodn\u00e1 posloupnost znak\u016f.<\/p>\n<p>A\u010dkoli se nedoporu\u010duje, aby byly soubory cookies webov\u00e9 str\u00e1nky p\u0159\u00edstupn\u00e9 pro v\u0161echny subdom\u00e9ny (nap\u0159\u00edklad \u2014 *.website.com), na mnoha str\u00e1nk\u00e1ch se to d\u011bl\u00e1. V takov\u00e9m p\u0159\u00edpad\u011b se takov\u00e9 soubory cookies automaticky odes\u00edlaj\u00ed zamaskovan\u00e9mu extern\u00edmu trackeru. Jako v\u00fdsledek \u2014 o n\u011bjak\u00e9m soukrom\u00ed ji\u017e nem\u016f\u017ee b\u00fdt \u0159e\u010di.<\/p>\n<p>Krom\u011b toho to stejn\u00e9 plat\u00ed i pro HTTP hlavi\u010dky <noindex><a rel=\"nofollow\" href=\"https:\/\/developers.google.com\/web\/updates\/2015\/09\/automating-resource-selection-with-client-hints\">Client-Hints<\/a><\/noindex>, kter\u00e9 se odes\u00edlaj\u00ed pouze hlavn\u00ed dom\u00e9n\u011b, proto\u017ee mohou b\u00fdt pou\u017eity k vytvo\u0159en\u00ed <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/httpwg\/http-extensions\/issues\/767\">digit\u00e1ln\u00ed otisk<\/a><\/noindex> u\u017eivatele. Ujist\u011bte se, \u017ee pou\u017eit\u00e1 CDN slu\u017eba spr\u00e1vn\u011b filtruje podobn\u00e9 hlavi\u010dky.<\/p>\n<h2>Z\u00e1v\u011bry<\/h2>\n<p>\nPokud pl\u00e1nujete brzy implementovat samostatn\u00fd hosting ciz\u00edch zdroj\u016f \u2013 dovolte mi poskytnout v\u00e1m n\u011bkolik rad:<\/p>\n<ul>\n<li>Hostujte u sebe sv\u00e9 nejd\u016fle\u017eit\u011bj\u0161\u00ed JS knihovny, fonty a CSS soubory. To sn\u00ed\u017e\u00ed riziko selh\u00e1n\u00ed webu nebo sn\u00ed\u017een\u00ed jeho v\u00fdkonu v d\u016fsledku toho, \u017ee zdroj, nezbytn\u00fd pro funk\u010dnost webu, byl nedostupn\u00fd vinou extern\u00edho slu\u017eby.<\/li>\n<li>P\u0159ed t\u00edm, ne\u017e za\u010dnete ukl\u00e1dat extern\u00ed zdroje na CDN, ujist\u011bte se, \u017ee p\u0159i pojmenov\u00e1v\u00e1n\u00ed jejich soubor\u016f pou\u017e\u00edv\u00e1te n\u011bjak\u00fd syst\u00e9m verzov\u00e1n\u00ed, nebo \u017ee m\u016f\u017eete spravovat \u017eivotn\u00ed cyklus t\u011bchto zdroj\u016f, bu\u010f ru\u010dn\u011b, nebo automaticky vymaz\u00e1n\u00edm cache CDN p\u0159i vyd\u00e1n\u00ed nov\u00e9 verze skriptu.<\/li>\n<li>Velmi pe\u010dliv\u011b zach\u00e1zejte s nastaven\u00edm CDN, proxy serveru a cache. To v\u00e1m pom\u016f\u017ee zabr\u00e1nit odes\u00edl\u00e1n\u00ed cookies va\u0161eho projektu nebo hlavi\u010dek <code>Client-Hints<\/code> ciz\u00edm slu\u017eb\u00e1m.<\/li>\n<\/ul>\n<p>\n<b>V\u00e1\u017een\u00ed \u010dten\u00e1\u0159i!<\/b> Umis\u0165ujete na sv\u00e9 servery ciz\u00ed materi\u00e1ly, kter\u00e9 jsou nesm\u00edrn\u011b d\u016fle\u017eit\u00e9 pro fungov\u00e1n\u00ed va\u0161ich projekt\u016f?<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/ruvds.com\/ru-rub\"><img decoding=\"async\" alt=\"Samostatn\u00fd hosting extern\u00edch zdroj\u016f: dobr\u00fd, \u0161patn\u00fd, zl\u00fd\" src=\"\/wp-content\/uploads\/2019\/12\/30212b2008a5ed0b51a4469d885b9e91.png\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/ruvds.com\/ru-rub\/#order\"><img decoding=\"async\" alt=\"Samostatn\u00fd hosting extern\u00edch zdroj\u016f: dobr\u00fd, \u0161patn\u00fd, zl\u00fd\" src=\"\/wp-content\/uploads\/2019\/12\/7117788d4bd0ef7de47d98a372b72ae7.png\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><br \/>\n<br \/>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/ruvds\/blog\/481574\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0412 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u0433\u043e\u0434\u044b \u0432\u0441\u0451 \u0431\u043e\u043b\u044c\u0448\u0435 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c \u0434\u043b\u044f \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0444\u0440\u043e\u043d\u0442\u0435\u043d\u0434-\u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u043e \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e\u043c\u0443 \u0445\u043e\u0441\u0442\u0438\u043d\u0433\u0443 \u0438\u043b\u0438 \u043f\u0440\u043e\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432. Akamai \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0437\u0430\u0434\u0430\u0432\u0430\u0442\u044c \u0441\u043f\u0435\u0446\u0438\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b \u0434\u043b\u044f \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u0445 URL. \u0423 Cloudflare \u0435\u0441\u0442\u044c \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u044f Edge Workers. Fasterzine \u043c\u043e\u0436\u0435\u0442 \u043f\u0435\u0440\u0435\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c URL \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u0445 \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u043e\u043d\u0438 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u043b\u0438 \u0431\u044b \u043d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b, \u043d\u0430\u0445\u043e\u0434\u044f\u0449\u0438\u0435\u0441\u044f \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c \u0434\u043e\u043c\u0435\u043d\u0435 \u0441\u0430\u0439\u0442\u0430. \u0415\u0441\u043b\u0438 \u0438\u0437\u0432\u0435\u0441\u0442\u043d\u043e, \u0447\u0442\u043e [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-54566","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0412 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u0433\u043e\u0434\u044b \u0432\u0441\u0451 \u0431\u043e\u043b\u044c\u0448\u0435 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c \u0434\u043b\u044f \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0444\u0440\u043e\u043d\u0442\u0435\u043d\u0434-\u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u043e \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e\u043c\u0443 \u0445\u043e\u0441\u0442\u0438\u043d\u0433\u0443 \u0438\u043b\u0438 \u043f\u0440\u043e\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/samostoyatelnyj-hosting-storonnih-resursov-horoshij-plohoj-zloj\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"cs_CZ\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0421\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432: \u0445\u043e\u0440\u043e\u0448\u0438\u0439, \u043f\u043b\u043e\u0445\u043e\u0439, \u0437\u043b\u043e\u0439 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0412 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u0433\u043e\u0434\u044b \u0432\u0441\u0451 \u0431\u043e\u043b\u044c\u0448\u0435 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c \u0434\u043b\u044f \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0444\u0440\u043e\u043d\u0442\u0435\u043d\u0434-\u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u043e \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e\u043c\u0443 \u0445\u043e\u0441\u0442\u0438\u043d\u0433\u0443 \u0438\u043b\u0438 \u043f\u0440\u043e\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/samostoyatelnyj-hosting-storonnih-resursov-horoshij-plohoj-zloj\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-12-28T21:00:00+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-02-18T11:02:35+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Samostatn\u00fd hosting extern\u00edch zdroj\u016f: dobr\u00fd, \u0161patn\u00fd, zl\u00fd | ProHoster","description":"V posledn\u00edch letech nab\u00edz\u00ed st\u00e1le v\u00edce platforem pro optimalizaci frontendov\u00fdch projekt\u016f mo\u017enosti samostatn\u00e9ho hostov\u00e1n\u00ed nebo proxyov\u00e1n\u00ed extern\u00edch zdroj\u016f.","canonical_url":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/samostoyatelnyj-hosting-storonnih-resursov-horoshij-plohoj-zloj","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"cs_CZ","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0421\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432: \u0445\u043e\u0440\u043e\u0448\u0438\u0439, \u043f\u043b\u043e\u0445\u043e\u0439, \u0437\u043b\u043e\u0439 | ProHoster","og:description":"\u0412 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 \u0433\u043e\u0434\u044b \u0432\u0441\u0451 \u0431\u043e\u043b\u044c\u0448\u0435 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c \u0434\u043b\u044f \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u0444\u0440\u043e\u043d\u0442\u0435\u043d\u0434-\u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e\u0442 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u043f\u043e \u0441\u0430\u043c\u043e\u0441\u0442\u043e\u044f\u0442\u0435\u043b\u044c\u043d\u043e\u043c\u0443 \u0445\u043e\u0441\u0442\u0438\u043d\u0433\u0443 \u0438\u043b\u0438 \u043f\u0440\u043e\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0445 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432.","og:url":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/samostoyatelnyj-hosting-storonnih-resursov-horoshij-plohoj-zloj","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-12-28T21:00:00+00:00","article:modified_time":"2020-02-18T11:02:35+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"54566","title":null,"description":null,"keywords":null,"keyphrases":{"focus":[],"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-24 11:52:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 20:02:46","updated":"2026-08-11 12:50:28","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/54566","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/comments?post=54566"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/54566\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media?parent=54566"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/categories?post=54566"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/tags?post=54566"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}