Nepravdy ve vyrocich budou predevsim z neznalosti. Ono na urade zapomeli, ze u operatoru pracuje dost schopnych lidich, co rizika posoudi u dane krabice lip, nez nejaky urednik - jehoz znalost je omezena leda tak na zemi puvodu. Jednoduse proto, ze vetsinu tech skatuli urednik ani nevidel... natoz aby si na ne sahnul.
Kdyby chytraci z Brna alespon neodmitali evropske ci americke bezpecnostni certifikace. Pak by to take pusobilo jinak. Dodnes nikdo z NUKIBu poradne nevysvetlil, proc kdyz je neco dost dobre pro NIST nebo ENISA tak to porad neni dostacujici v nasich kotehulkach.
problém rizik je, že to jsou rizika, tj. nějaká předpověď do budoucna, míra pravděpodobnosti. Operátor a jeho technicky mohou skvěle posoudit současný stav, ale jak posoudit stav budoucí? Vždyť ani věhlasná laboratoř O2/Cetin, kde ty krabičky několik týdnů tvrdě testují (jejich slova), je testují jen před uvedením do provozu a nikoliv při každé aktualizaci, jak by se slušelo.
Asi stát by mě mít možnost nějak do toho zasáhnout, pokud jde produkt dneska zranitelný a je to známo (či by mohlo být) už to pokrývají současné zákony, pokud ale u produktu existuje riziko, že může být zneužitý politickou mocí v budoucnu, tak operátor nemá zpravodajské informace, nemusí znát a orientovat se v politice, to mu logicky nepřísluší.
Netroufám si ale posoudit, že současný návrh v ZoKB2 je správný či není, jestli to operátorům (a jiným subjektům) udělá problémy či nikoliv. Vím, že APMS umí velice dobře využít každou zkulinku, aby lobovala na svoji stranu a už několikrát lobovala pro zisk operátorů.
A kolik testu ze udelali na urade? ;-) Moc ne... co? A to je rozdil mezi rizenim bezpecnosti statnimi slozkami u nas a na zapade. U nas se obligatne hleda cesta, jak se u toho moc nepredrit. A hlavne za nic taky nenest zodpovednost (coz by v pripade aktivni certifikace zarizeni pro KII samozrejme museli)...
Pritom FIPS podobne funguje - certifikuje se nejen hardware, ale i konkretni verze software. Takze ne ze by to neslo... ono se (tady) jenom nechce. Bezpecnostni standardy pise primo NIST a na certifikace ma nezavisle laboratore, ktere si sami vybrali. A funguje jim to. Pokud by to NUKIB s bezpecnosti KII myslel opravdu seriozne, postupoval by obdobne.
Porad jsme u toho, ze NUKIB ma potrebu vynalezat kolo a vymyslet veci, ktere jinde davno funguji. Proc systematicky opovrhuji tim, co je i pro americkou vladu dobry je proste zahada. A ano, v takovem prostredi je zadouci hledat kazdou skulinku a ukazovat, ze ta "specificka ceska cesta" je proste blbost. Kdyby na NUKIBu prevzali model z USA, tak by ani APMS nemohla nic namitat.
při zakázání nějakého dodavatele se ale přece nejedná jen o to, že SW může být zranitelný, ale že může být také cíleně zneužitelný. Ono třeba i takové poskytnutí informace o zařízeních, které jsou zranitelná dříve než zákazníkovi pošleš patch může způsobit velké problémy. Nebo prosté umělé omezení dodávek. V tom ani FIPS nepomůže. To je o politické důvěře, jestli daný dodavatel nemůže být nepřítelem.
Nekombinuješ náhodou hrušky, jablka a banány?
FIPS je ale pěkná řádka standardů, některé končí jako různé ISO normy či RFC a dostávají se k nám i oficiálně, někdo ti musí říct, co přesně z toho a kdy máš dodržovat. Proti NIS2 ale přece stojí částečně FISMA a hlavně nově vznikající CSF2. NÚKIB ale kolo vynalézat musí, FISMA je povinná pouze pro vybrané státní úřady a pro jejich dodavatele, nereguluje soukromý sektor a náklady na její dodržení jsou prostě vysoké. CSF2 kopíruje NIS2 a je to dost horké zboží, těžko se v tom můžeme inspirovat.
Jaký jiný model mají v USA na regulaci IT bezpečnosti v soukromém sektoru?
FIPS resi krom jineho i tu bezpecnost, o kterou prece jde. A zrovna co se sitoveho software tyce, tam je to krasne videt... verze s FIPS certifikaci vychazi pozdeji a rozhodne ne s kazdou verzi. I blbe openssl ma FIPS mode, ze? ;-) To neni nic, co by neexistovalo, to funguje uz davno.
Ano, nekdo musi rict, co se ma dodrzovat. NIST tohle umi a dela, NUKIB moc ne (a i to malo co vypotili nezvladaji vynucovat ani u statni spravy) a podle toho to tady taky vypada.
Argument cilene cilene zneuzitelnosti je fajn, ale bude to fungovat stejne pitome jako blokace online hazardu - takze vubec. Nez se urad rozkouka a slavnostne vyda ten svuj "zakaz", vedle vzniknou dalsi dve znacky a muze se zacit znovu. Uredni psi z kyberuradu zastekaji, cinska karavana bude vesele kracet dal. A kdyz se zakaze vsecko stylem src=China, vsak on se uz nejaky prostrednik z nejake treti zeme najde. Zhusta se takle obchazi i ruzne sankce, ze? Jestli ma nekdo pocit, ze tyhle zakazy budou fungovat, tak je fakt naivni. Pokud bude mit nekdo cil uskodit, tu skulinu si najde.
No ale srovnávat NÚKIB s NIST je dost nefér myslím, že ty rozpočty se kterými NIST pracuje oproti NÚKIBu...
NÚKIB - 560 Milionů Kč
NIST - $1,24 bil = 31 Miliard Kč
Samozřejmě NIST má širší zaměření než NÚKIB, ale chci pokukázat na to, že mají mnohem více zdrojů na to, aby popsali konkrétněji to, jak má ten soulad vypadat oproti NÚKIBu. Jinak ano napříč EU by mohla ta spolupráce vypadat lépe a i samotná NIS2 by mohla být nařízení, a to významě lépe popisné, než to obecné povídání, které z toho vzniklo.
Kdyz na to nemam budget, tak vezmu co maji jinde. Tak proste to je ;-) Coz ale nas urad tak nejak odmita, zjevne si tam mysli, ze jsou naopak chytrejsi nez v NISTu. A hlavne nikdo nedokaze vysvetlit, proc veci co jsou dobry i pro americkou vladu nejsou dobry pro nas stat...
A nesrovnaval bych jen absolutni castky, per capita uz to rozhodne tak "skarede" taky nevypada, to jsme na nejakych 92 vs 56 Kc per obyvatel. Kdyz uz chceme srovnavat...
FIPS je ale celá řada standardů, někdo ti musí říct, který konkrétně musíš dodržet pro jaké případy.
Openssl FIPS je konkrétně FIPS 140 a znamená to, že openssl bude generovat certifikáty pouze s povolenými algoritmy a budou obsahovat povinné atributy. Bude se správně řešit zdroj náhodných čísel atd. atd. Někdo ti ale musí říct, že tvůj SW musí konkrétně projít FIPS 140. Těch fipsů jsou stovky. Zrovna fips variantu štědře sponzorovalo právě NIST.
NIST to ale dělá pouze pro státní správu, NUKIB to dělá i pro soukromý sektor.
Ano, ta implementace pro zakazování dodavatelů není teď nešťastnější. Síťové core prvky ale nemůžeš tak snadno rebrandovat, máš na tom navěšených miliony patentů a nelze to jek tak přelepit a využít stejný dodavatelský řetězec a pokračovat v dodávkách do infrastruktury. To můžeš udělat u retailu. Nemám pocit, že budou fungovat, chápu důvody proč to chtějí řešit, to je celé.
Vsak tohle by mel byt schopen rict urad, vyspecifikovat pozadavky. Proste by melo byt definovane, co maji zarizeni splnovat, pokud se maji vyskytnout jako soucast KII. Proste jasne popsany opt-in. Model zakazu ala NUKIB je jednoznacny opt-out, kdy prostredi fakt predikovatelne moc neni - a ze je neco "hrozba" se dozvime az ex-post na zaklade neprilis jasnych kriterii (aka na urade si nekdo neco vycte asi z kavove sedliny). To je myslim i jadro sporu, pokud jde o APMS.
Proc to chteji delat tak jak to je navrzene je nasnade... je s tim min obecne prace. A soucasne se na urade nenese odpovednost za to, ze kdyz neco jakoze doporuci (nedejboze certifikuje) a ono se to doporuceni ukaze jako chybne.
Proc by se Huawei nemohlo zitra jmenovat treba DubaiSheikNetworks ci IndiaShinyNet? Ne, tohle fakt neni az neresitelny problem, jak se na prvni pohled jevi. Ostatne i kdyz si clovek proleze portfolio u Cisca, tak se tam najde kdeco, proste proto ze si to v minulosti nekde koupili. Pokud bude mit cinska vlada silny motiv nasalatit se do KII a budou se ji do toho hazet klacky stylem "nesmi to byt cinske", tak si problem s patenty treba s tim sejkem nebo indianem vyresi. Tomu prostrednikovi z toho taky neco kapne. Funguje tak proste obchazeni sankci (vsak i do Ruska se dostavaj veci, co by nemely), fungovalo to tak odjakziva... a je naivni si lhat, ze tyhle mezinarodni (zakulisni) vztahy si uhlidame, zvlast se ten indicky ci saudskoarabsky vyrobce bude tvarit, jakoze to vyrobil on. Prachy nesmrdi...
Tohle fakt neukocirujeme skrze nejake post-portem zakazy, to je fakt naivni predstava. Jedina sance jak to ukocirovat je mit system certifikaci a hlidat si ten proces. Urcit, ze prvky KII musi splnovat to ci ono. A tady proste jde vzit to, co mame od NISTu (tzn. pozadovat FIPS certifikace). Opet, kdyz je to dobre i pro americkou vladu, nevidim duvod, proc by to nemelo byt dobre pro nas... :-) Nemusime furt vynalezat kolo...
Jádro pudla, alespoň dle současných vyjádření představitelů úřadu, je už v tom, že úřad chce dělat geopolitická rozhodnutí a ne technologická. '
Navíc mají (a velmi často používají) ten luxus schovat se "tajné" informace. Kolikrát jsem slyšel "my víme, co vy nevíte, ale kdybyste věděli, tak s náma souhlasíte".
Úřad už nepokrytě a bez jakýchkoli dopadů či sebereflexe lhal v dopadové studii k zákonu a není jediný důvod se domnívat, že dále bude chovat jinak. Je to hodně smutný příběh od začátku až do teď.
Souhlasim, ze odmitani evropskych nebo americkych bezpecnostnich certifikaci je problem. Ale myslet si, ze lidi u operatoru jsou schopni a hlavne nezavisli je naivni. Lidi u operatora jsou relativne spatne placeni, ridi je operator a ten hledi na zisk, tudiz na naklady a nejaka bezpecnost statu je mu u zadele.
špatně placení? Aspoň v našich končinách ty platy mají v sektoru vyloženě nadprůměrné, aspoň co jde o HW nebo infrastrukturu.
Oni budou operátoři také rádi, ikdyž APMS křičí. Ono je objektivně těžké obhájit nákup dvojnásobně dražšího řešení, jak píšeš, jdou primárně za nízkými náklady a bezpečnost řeší jen tady a teď, když ti jeden dodavatel jde cenou tak extrémně nízko a používá ho i konkurence, nechceš mít zbytečně vyšší náklady než ostatní. Ta volba H je vyloženě pragmatická.
Pokud myslite ceske operatory tak ty jsou az polovinu pod prumerem v IT v nasich luzich a hajich. V telco skoncila zlata era pohadkovych platu. Ceske telco je chude.
Neco jineho je pokud pracujete jako subdodavatel. Tam se lze dostat k zajimavejsim castkam. Ale to neni predmetem diskuse.
Na part/full time je to mizerie. .
Jenze tady se bavime o jedne konkretni znacce, co uz je proflakla. Ale to fakt neni systemove reseni, ze budeme podle samolepky na skatuli nejaka zarizeni zakazovat. Delat se to ma jinak - proste definovat kriteria, ktera to ma splnovat - aka ten FIPS viz vyse. A certifikovat si zarizeni, ktera budou v KII akceptovatelna. Jenze ono nic takoveho poradne nemame - protoze proc? Protoze to je moc prace...
Stavajici urednicke reseni "pres brand" ma jednu zasadni vadu - ona ta znacka se muze dost rychle zmenit, i kdyz ostatni veci okolo zustanou (vcetne tech vyhodnych cenovek). A i pokud se na to pujde stylem "vse s Ciny", tak to v globalni ekonomice prekazka taky nebude.... proste tam tu spravnou samolepku nalepi... treba nekde v Dubaji, kde to bude mistni sejk vydavat za sve reseni vymenou za nejake vsimne od cinske vlady. Co predvadi NUKIB proste neni systemove reseni, nebude to fungovat...
User Warning
File: .../stable/php-libs/appShare/components/GlobalFooter.php:70
60: $svgResponse = $client->request('GET', '/svg/', ['auth' => ['Basic', null]]); 61: $svg = $svgResponse->getBody()->getContents(); 62: } catch (Exception) { 63: } 64: $footer = $svg . $footerHtml; 65: $response = new Nette\Application\Responses\TextResponse($footer); 66: $this->cache->save($cacheKey, $response, [ 67: Cache::Expire => self::CACHE_EXPIRE, 68: ]); 69: } else { 70: trigger_error('global-footer: status code ' . $htmlResponse->getStatusCode(), E_USER_WARNING); 71: } 72: } 73: return $result; 74: }
60: $svgResponse = $client->request('GET', '/svg/', ['auth' => ['Basic', null]]); 61: $svg = $svgResponse->getBody()->getContents(); 62: } catch (Exception) { 63: } 64: $footer = $svg . $footerHtml; 65: $response = new Nette\Application\Responses\TextResponse($footer); 66: $this->cache->save($cacheKey, $response, [ 67: Cache::Expire => self::CACHE_EXPIRE, 68: ]); 69: } else { 70: trigger_error('global-footer: status code ' . $htmlResponse->getStatusCode(), E_USER_WARNING); 71: } 72: } 73: return $result; 74: }
| $message | 'global-footer: status code 500'
|
|---|---|
| $error_level | 512
|
69: } else { 70: trigger_error('global-footer: status code ' . $htmlResponse->getStatusCode(), E_USER_WARNING); 71: } 72: } 73: return $result; 74: } 75: 76: public function render(): void { 77: $seznamVisitor = $this->seznamVisitorService->isVisitorFromSeznam() ? 'true' : 'false'; 78: $cacheKey = self::class . '_' . AppConfig::$usersys['site'] . '_' . $seznamVisitor; 79: $cachedResponse = $this->loadCachedResponse($cacheKey); 80: 81: $template = $this->getTemplate(); 82: if ($cachedResponse === null) { 83: $cachedResponse = $this->cache->load($cacheKey);
| $cacheKey | 'Shared_GlobalFooter_lupa_false'
|
|---|
49: 100% { transform: rotate(360deg); } 50: } 51: </style> 52: '; 53: echo LR\Filters::escapeHtmlText($handlerGw->callHandler('js', ['global/components/lazyComponent.js'])) /* line 31 */; 54: echo "\n"; 55: } 56: } else /* line 33 */ { 57: $object = $control->getComponent($component) /* line 34 */; 58: $method = 'render' . ($action ? ucfirst($action) : '') /* line 35 */; 59: echo LR\Filters::escapeHtmlText(call_user_func_array([$object, $method], $args)) /* line 36 */; 60: echo "\n"; 61: } 62: return get_defined_vars(); 63: }
26: width: 20px; height: 20px; border: 4px solid #aaa; border-bottom-color: transparent; border-radius: 50%; 27: display: inline-block; box-sizing: border-box; 28: animation: rotation 1s linear infinite; 29: } 30: @keyframes rotation { 31: 0% { transform: rotate(0deg); } 32: 100% { transform: rotate(360deg); } 33: } 34: </style> 35: 36: {$handlerGw->callHandler('js', ['global/components/lazyComponent.js'])} 37: 38: {/if} 39: 40: {else}
161: /** 162: * Renders template. 163: * @internal 164: */ 165: public function render(?string $block = null): void 166: { 167: $level = ob_get_level(); 168: try { 169: $this->prepare(); 170: if (!$this->doRender($block)) { 171: $this->main(); 172: } 173: 174: } catch (\Throwable $e) { 175: while (ob_get_level() > $level) {
92: 93: /** 94: * Renders template to output. 95: * @param object|mixed[] $params 96: */ 97: public function render(string $name, $params = [], ?string $block = null): void 98: { 99: $template = $this->createTemplate($name, $this->processParams($params)); 100: $template->global->coreCaptured = false; 101: ($this->probe)($template); 102: $template->render($block); 103: } 104: 105: 106: /**
| $block | null
|
|---|
40: /** 41: * Renders template to output. 42: */ 43: public function render(?string $file = null, array $params = []): void 44: { 45: Nette\Utils\Arrays::toObject($params, $this); 46: if (\cfg::$debug['tmplDump']) { 47: $filePath = strstr($file ? : $this->file, "templates/"); 48: echo '<pre class="nette-dump"><span class="nette-dump-object">' . get_class($this->control) . ": $filePath" . '</span></pre>'; 49: } 50: $this->latte->render($file ?: $this->file, $this); 51: } 52: 53: 54: /**
| $name | '/www/virtual/martin/stable/php-libs/appShare/templates/components/LazyComponent.latte'
|
|---|---|
| $params |
255: 256: if (!$this->isAjax()) { 257: $this['cssLoader']->render(); 258: $this['jsLoader']->render(); 259: } 260: 261: if ($this->useWrappingElement) { 262: $this->renderBeginWrappingElement(); 263: } 264: 265: $template->render(); 266: 267: if ($this->useWrappingElement) { 268: $this->renderEndWrappingElement(); 269: }
15: } else { 16: $this->template->component = $name; 17: $this->template->action = null; 18: } 19: 20: $this->template->args = $args; 21: 22: $this->template->defer = $defer; 23: 24: self::$rendered = true; 25: parent::render(); 26: } 27: 28: /** 29: * Fallback to diredtly create component instead of lazy loading when it is disabled in template config
| $name | 'globalFooter'
|
|---|
91: unset($parameters[\Shared_BaseComponent::EXTRA_PARAM_NAME]); 92: } else { 93: $control->clearExtraParameters(); 94: } 95: } 96: 97: if ($isDebug) { 98: // call method this way is much faster 99: // see http://grokbase.com/t/php/php-internals/115qyp1bjk/call-user-func-performance-and-dynamic-code 100: if (!$parameters) $control->$method(); 101: else call_user_func_array([$control, $method], array_values($parameters)); 102: return; 103: } 104: 105: try {
| $callback | |
|---|---|
| $args |
116: $this->renderBlock('commonFooter--lowerbox', get_defined_vars()) /* line 38 */; 117: echo "\n"; 118: } 119: if ($globalFooter === false) /* line 40 */ { 120: echo '<div class="section--footer section footer"> 121: '; 122: $this->createTemplate(IInfo\LatteMacros::getTemplateDestination('projectInfo.latte', $this->getName(), true), $this->getParameters(), "includeX")->render(); 123: echo '</div> 124: '; 125: } else /* line 45 */ { 126: IInfo\LatteMacros::renderControl("lazyComponent", "render", ['globalFooter'], $this->global->uiControl); 127: } 128: echo '</div> 129: </div> 130: </div>
1: 2: {default $hasPageAdverts = true} 3: {default $isFooterTypeAdditonalContent = true} 4: {default $isLayoutPageColumnsClosed = false} 5: 6: {* SWITCH ON GLOBAL FOOTER FOR IINFO WEBS + specific Tuesday (except stahuj, slunecnice) *} 7: {default $globalFooter = true} 8: {* VARIABLE USED IN appShare/templates/@footer--tuesday.latte *} 9: {default $isTuesday = false} 10: 11: {block CommonFooterBlock} 12: {if !$isLayoutPageColumnsClosed} 13: </div> {* end tag for "layout-page-column--main" if "@footer--RootLike.latte" is not used (it contains sidebar where the tag is needed to be closed before sidebar's content) *} 14: {/if} 15: </div> {* for "layout-page-columns" *}
| $control | |
|---|---|
| $method | 'render'
|
| $parameters | |
| $container |
299: 300: if (!$block) { 301: $hint = ($t = Latte\Helpers::getSuggestion($this->getBlockNames($layer), $name)) 302: ? ", did you mean '$t'?" 303: : '.'; 304: $name = $layer ? "$layer $name" : $name; 305: throw new Latte\RuntimeException("Cannot include undefined block '$name'$hint"); 306: } 307: 308: $this->filter( 309: function () use ($block, $params): void { reset($block->functions)($params); }, 310: $mod, 311: $block->contentType, 312: "block $name" 313: );
| $ʟ_args | null
|
|---|
354: $block->functions = array_merge($block->functions, $functions); 355: } 356: 357: 358: /** 359: * @param string|\Closure|null $mod content-type name or modifier closure 360: */ 361: private function filter(callable $function, $mod, string $contentType, string $name): void 362: { 363: if ($mod === null || $mod === $contentType) { 364: $function(); 365: 366: } elseif ($mod instanceof \Closure) { 367: echo $mod($this->capture($function), $contentType); 368:
302: ? ", did you mean '$t'?" 303: : '.'; 304: $name = $layer ? "$layer $name" : $name; 305: throw new Latte\RuntimeException("Cannot include undefined block '$name'$hint"); 306: } 307: 308: $this->filter( 309: function () use ($block, $params): void { reset($block->functions)($params); }, 310: $mod, 311: $block->contentType, 312: "block $name" 313: ); 314: } 315: 316:
| $function | |
|---|---|
| $mod | null
|
| $contentType | 'html'
|
| $name | 'block CommonFooterBlock'
|
14: { 15: extract($this->params); 16: extract(['hasPageAdverts' => true], EXTR_SKIP) /* line 1 */; 17: extract(['isFooterTypeAdditonalContent' => true], EXTR_SKIP) /* line 2 */; 18: extract(['isLayoutPageColumnsClosed' => false], EXTR_SKIP) /* line 3 */; 19: extract(['globalFooter' => true], EXTR_SKIP) /* line 5 */; 20: extract(['isTuesday' => false], EXTR_SKIP) /* line 7 */; 21: if ($this->getParentName()) { 22: return get_defined_vars(); 23: } 24: $this->renderBlock('CommonFooterBlock', get_defined_vars()) /* line 8 */; 25: echo ' 26: </div> 27: '; 28: if (!isset($isVisitorFromSeznam) || $isVisitorFromSeznam === false) /* line 55 */ {
1: 2: {default $hasPageAdverts = true} 3: {default $isFooterTypeAdditonalContent = true} 4: {default $isLayoutPageColumnsClosed = false} 5: 6: {* SWITCH ON GLOBAL FOOTER FOR IINFO WEBS + specific Tuesday (except stahuj, slunecnice) *} 7: {default $globalFooter = true} 8: {* VARIABLE USED IN appShare/templates/@footer--tuesday.latte *} 9: {default $isTuesday = false} 10: 11: {block CommonFooterBlock} 12: {if !$isLayoutPageColumnsClosed} 13: </div> {* end tag for "layout-page-column--main" if "@footer--RootLike.latte" is not used (it contains sidebar where the tag is needed to be closed before sidebar's content) *} 14: {/if} 15: </div> {* for "layout-page-columns" *}
| $name | 'CommonFooterBlock'
|
|---|---|
| $params |
161: /** 162: * Renders template. 163: * @internal 164: */ 165: public function render(?string $block = null): void 166: { 167: $level = ob_get_level(); 168: try { 169: $this->prepare(); 170: if (!$this->doRender($block)) { 171: $this->main(); 172: } 173: 174: } catch (\Throwable $e) { 175: while (ob_get_level() > $level) {
193: 194: if ($this->referenceType === 'import') { 195: if ($this->parentName) { 196: throw new Latte\RuntimeException('Imported template cannot use {extends} or {layout}, use {import}'); 197: } 198: 199: } elseif ($this->parentName) { // extends 200: ob_start(function () {}); 201: $this->params = $this->main(); 202: ob_end_clean(); 203: $this->createTemplate($this->parentName, $this->params, 'extends')->render($block); 204: 205: } elseif ($block !== null) { // single block rendering 206: $this->renderBlock($block, $this->params); 207:
| $block | null
|
|---|
160: 161: /** 162: * Renders template. 163: * @internal 164: */ 165: public function render(?string $block = null): void 166: { 167: $level = ob_get_level(); 168: try { 169: $this->prepare(); 170: if (!$this->doRender($block)) { 171: $this->main(); 172: } 173: 174: } catch (\Throwable $e) {
| $block | null
|
|---|
104: $this->createTemplate(IInfo\LatteMacros::getTemplateDestination('sidebar/ConsultingModule/detail.latte', $this->getName(), false), ['isErrorPage' => $isErrorPage] + $this->getParameters(), "includeX")->render(); 105: } elseif ($isSidebarTypeConsultingQuestions) /* line 97 */ { 106: $this->createTemplate(IInfo\LatteMacros::getTemplateDestination('sidebar/ConsultingModule/questions.latte', $this->getName(), false), ['isErrorPage' => $isErrorPage] + $this->getParameters(), "includeX")->render(); 107: } elseif ($isSidebarCryptoCurrencyExchange) /* line 99 */ { 108: $this->createTemplate(IInfo\LatteMacros::getTemplateDestination('sidebar/QuotationModule/cryptoCurrencyExchange.latte', $this->getName(), false), ['isErrorPage' => $isErrorPage] + $this->getParameters(), "includeX")->render(); 109: } elseif ($disableSidebar) /* line 101 */ { 110: } else /* line 102 */ { 111: $this->createTemplate(IInfo\LatteMacros::getTemplateDestination('sidebar/@default.latte', $this->getName(), false), ['isErrorPage' => $isErrorPage] + $this->getParameters(), "includeX")->render(); 112: } 113: } 114: $this->createTemplate(IInfo\LatteMacros::getTemplateDestination('commonFooter.latte', $this->getName(), false), ['isLayoutPageColumnsClosed' => $isLayoutPageColumnsClosedDefault,] + $this->getParameters(), "includeX")->render(); 115: return get_defined_vars(); 116: } 117: 118:
1: {default $isSidebarTypeActuality = false} 2: {default $isSidebarTypeAnniversaryComics = false} 3: {default $isSidebarTypeArchiveActualities = false} 4: {default $isSidebarTypeArchiveLabelDetail = false} 5: {default $isSidebarTypeArticle = false} 6: {default $isSidebarTypeAwards = false} 7: {default $isSidebarTypeBlogs = false} 8: {default $isSidebarTypeBlogsDetail = false} 9: {default $isSidebarTypeBlogsIndex = false} 10: {default $isSidebarTypeConsultingDetail = false} 11: {default $isSidebarTypeConsultingQuestions = false} 12: {default $isSidebarTypeDatabaseCatalog = false} 13: {default $isSidebarTypeDatabaseView = false} 14: {default $isSidebarTypeDiscussionDetail = false} 15: {default $isSidebarTypeIndex = false}
161: /** 162: * Renders template. 163: * @internal 164: */ 165: public function render(?string $block = null): void 166: { 167: $level = ob_get_level(); 168: try { 169: $this->prepare(); 170: if (!$this->doRender($block)) { 171: $this->main(); 172: } 173: 174: } catch (\Throwable $e) { 175: while (ob_get_level() > $level) {
193: 194: if ($this->referenceType === 'import') { 195: if ($this->parentName) { 196: throw new Latte\RuntimeException('Imported template cannot use {extends} or {layout}, use {import}'); 197: } 198: 199: } elseif ($this->parentName) { // extends 200: ob_start(function () {}); 201: $this->params = $this->main(); 202: ob_end_clean(); 203: $this->createTemplate($this->parentName, $this->params, 'extends')->render($block); 204: 205: } elseif ($block !== null) { // single block rendering 206: $this->renderBlock($block, $this->params); 207:
| $block | null
|
|---|
160: 161: /** 162: * Renders template. 163: * @internal 164: */ 165: public function render(?string $block = null): void 166: { 167: $level = ob_get_level(); 168: try { 169: $this->prepare(); 170: if (!$this->doRender($block)) { 171: $this->main(); 172: } 173: 174: } catch (\Throwable $e) {
| $block | null
|
|---|
2: 3: use Latte\Runtime as LR; 4: 5: /** source: /www/virtual/martin/stable/php-libs/appShare/templates/OpinionsModule/ForArticle/footer.latte */ 6: final class Templatebb284872f5 extends Latte\Runtime\Template 7: { 8: 9: public function main(): array 10: { 11: extract($this->params); 12: $this->createTemplate(IInfo\LatteMacros::getTemplateDestination("../../footer.latte", $this->getName(), false), $this->getParameters(), "includeX")->render(); 13: return get_defined_vars(); 14: } 15: 16:
1: {* 2: necessary if we need some special different sidebars for a article detail page on 3: different servers 4: *} 5: {includeX "../../footer.latte"} 6:
161: /** 162: * Renders template. 163: * @internal 164: */ 165: public function render(?string $block = null): void 166: { 167: $level = ob_get_level(); 168: try { 169: $this->prepare(); 170: if (!$this->doRender($block)) { 171: $this->main(); 172: } 173: 174: } catch (\Throwable $e) { 175: while (ob_get_level() > $level) {
106: ob_end_clean(); 107: } else { 108: echo ob_get_clean(); 109: } 110: } 111: } 112: echo '</div> 113: '; 114: $this->renderBlock('Opinions_ForArticle__belowForm', get_defined_vars()) /* line 46 */; 115: echo "\n"; 116: $this->createTemplate(IInfo\LatteMacros::getTemplateDestination('footer.latte', $this->getName(), false), $this->getParameters(), "includeX")->render(); 117: return get_defined_vars(); 118: } 119: 120:
1: {includeX '/header.latte'} 2: 3: 4: {var $isOpinionsListing = (isset($opinionsListing) && $opinionsListing)} 5: {var $isOpinionAddComponent = (isset($opinionAddComponent) && $opinionAddComponent)} 6: 7: {block Opinions_ForArticle__aboveForm}{/block} 8: 9: <div class="design-tile--version-1 design-tile"> 10: <h1 class="{if $isOpinionsListing && !$isOpinionAddComponent} design-heading--opinions-comment-button {/if} design-heading--opinions-comment design-heading--level-1 design-heading"> 11: <span> 12: {if isset($shortTitle) && $shortTitle} 13: {$shortTitle} 14: {else} 15: {$titlePrefix}
161: /** 162: * Renders template. 163: * @internal 164: */ 165: public function render(?string $block = null): void 166: { 167: $level = ob_get_level(); 168: try { 169: $this->prepare(); 170: if (!$this->doRender($block)) { 171: $this->main(); 172: } 173: 174: } catch (\Throwable $e) { 175: while (ob_get_level() > $level) {
193: 194: if ($this->referenceType === 'import') { 195: if ($this->parentName) { 196: throw new Latte\RuntimeException('Imported template cannot use {extends} or {layout}, use {import}'); 197: } 198: 199: } elseif ($this->parentName) { // extends 200: ob_start(function () {}); 201: $this->params = $this->main(); 202: ob_end_clean(); 203: $this->createTemplate($this->parentName, $this->params, 'extends')->render($block); 204: 205: } elseif ($block !== null) { // single block rendering 206: $this->renderBlock($block, $this->params); 207:
| $block | null
|
|---|
160: 161: /** 162: * Renders template. 163: * @internal 164: */ 165: public function render(?string $block = null): void 166: { 167: $level = ob_get_level(); 168: try { 169: $this->prepare(); 170: if (!$this->doRender($block)) { 171: $this->main(); 172: } 173: 174: } catch (\Throwable $e) {
| $block | null
|
|---|
5: /** source: /www/virtual/martin/stable/php-libs/appShare/templates/OpinionsModule/ForArticle/thread.latte */ 6: final class Templateec62bab595 extends Latte\Runtime\Template 7: { 8: 9: public function main(): array 10: { 11: extract($this->params); 12: if (!empty($_HT_vars)) /* line 1 */ { 13: extract((array) $_HT_vars) /* line 2 */; 14: } 15: $this->createTemplate(IInfo\LatteMacros::getTemplateDestination("default.latte", $this->getName(), false), ['_HT_vars' => !empty($_HT_vars) ? $_HT_vars : null] + $this->getParameters(), "includeX")->render(); 16: return get_defined_vars(); 17: } 18: 19:
1: {if !empty($_HT_vars)} 2: {php extract((array) $_HT_vars)} 3: {/if} 4: 5: {includeX "default.latte" _HT_vars => !empty($_HT_vars) ? $_HT_vars : null} 6:
161: /** 162: * Renders template. 163: * @internal 164: */ 165: public function render(?string $block = null): void 166: { 167: $level = ob_get_level(); 168: try { 169: $this->prepare(); 170: if (!$this->doRender($block)) { 171: $this->main(); 172: } 173: 174: } catch (\Throwable $e) { 175: while (ob_get_level() > $level) {
92: 93: /** 94: * Renders template to output. 95: * @param object|mixed[] $params 96: */ 97: public function render(string $name, $params = [], ?string $block = null): void 98: { 99: $template = $this->createTemplate($name, $this->processParams($params)); 100: $template->global->coreCaptured = false; 101: ($this->probe)($template); 102: $template->render($block); 103: } 104: 105: 106: /**
| $block | null
|
|---|
40: /** 41: * Renders template to output. 42: */ 43: public function render(?string $file = null, array $params = []): void 44: { 45: Nette\Utils\Arrays::toObject($params, $this); 46: if (\cfg::$debug['tmplDump']) { 47: $filePath = strstr($file ? : $this->file, "templates/"); 48: echo '<pre class="nette-dump"><span class="nette-dump-object">' . get_class($this->control) . ": $filePath" . '</span></pre>'; 49: } 50: $this->latte->render($file ?: $this->file, $this); 51: } 52: 53: 54: /**
| $name | '/www/virtual/martin/stable/php-libs/appShare/templates/OpinionsModule/ForArticle/thread.latte'
|
|---|---|
| $params |
40: return $this->source; 41: } 42: 43: 44: /** 45: * Sends response to output. 46: */ 47: public function send(Nette\Http\IRequest $httpRequest, Nette\Http\IResponse $httpResponse): void 48: { 49: if ($this->source instanceof Nette\Application\UI\Template) { 50: $this->source->render(); 51: 52: } else { 53: echo $this->source; 54: }
161: 162: Arrays::invoke($this->onPresenter, $this, $this->presenter); 163: $response = $this->presenter->run(clone $request); 164: 165: if ($response instanceof Responses\ForwardResponse) { 166: $request = $response->getRequest(); 167: goto process; 168: } 169: 170: Arrays::invoke($this->onResponse, $this, $response); 171: $response->send($this->httpRequest, $this->httpResponse); 172: } 173: 174: 175: public function processException(\Throwable $e): void
| $httpRequest | |
|---|---|
| $httpResponse |
80: } 81: 82: 83: /** 84: * Dispatch a HTTP request to a front controller. 85: */ 86: public function run(): void 87: { 88: try { 89: Arrays::invoke($this->onStartup, $this); 90: $this->processRequest($this->createInitialRequest()); 91: Arrays::invoke($this->onShutdown, $this); 92: 93: } catch (\Throwable $e) { 94: Arrays::invoke($this->onError, $this, $e);
| $request |
|---|
13: !empty($_SERVER["HTTPS"]), 14: 'http://forum.lupa.cz/', 15: trim(AppConfig::$modulesUrl['blogs'], '/'), 16: true 17: ); 18: $redirector->injectDibiConnections($bootstrap->getContext()->getService('dibiConnections')); 19: $redirector->redirectUrl(); 20: unset($redirector); 21: 22: $bootstrap->setupRouting(); 23: $bootstrap->getApplication()->run(); 24:
| HTTPS | 'on'
|
|---|---|
| SCRIPT_URL | '/clanky/regulace-podle-nis2-klamali-jste-stezuje-si-operatorske-sdruzeni-apms-na-nukib/nazory/vlakno/1/'
|
| SCRIPT_URI | 'http://lupa-martin.imho.cz/clanky/regulace-podle-nis2-klamali-jste-stezuje-si-operatorske-sdruzeni-apms-na-nukib/nazory/vlakno/1/'
|
| TZ | 'Europe/Prague'
|
| HTTP_HOST | 'lupa-martin.imho.cz'
|
| HTTP_ACCESS_CONTROL_ALLOW_ORIGIN | '*'
|
| HTTP_REFERRER_POLICY | 'no-referrer-when-downgrade'
|
| HTTP_X_REAL_IP | '216.73.216.174'
|
| HTTP_CONNECTION | 'close'
|
| HTTP_ACCEPT | '*/*'
|
| HTTP_USER_AGENT | 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)'
|
| HTTP_ACCEPT_ENCODING | 'gzip, br, zstd, deflate'
|
| HTTP_COOKIE | '_nss=1; tracy-session=676000cdd2; opinionsOrdering=insert_flat'
|
| HTTP_X_HTTPS | '1'
|
| PATH | '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin'
|
| LD_LIBRARY_PATH | '/opt/mozjpeg/lib64'
|
| SERVER_SIGNATURE | |
| SERVER_SOFTWARE | 'Apache/2.4.38 (Debian)'
|
| SERVER_NAME | 'lupa-martin.imho.cz'
|
| SERVER_ADDR | '127.0.0.1'
|
| SERVER_PORT | '80'
|
| REMOTE_ADDR | '216.73.216.174'
|
| DOCUMENT_ROOT | '/www/virtual/martin/stable/lupa/document_root/'
|
| REQUEST_SCHEME | 'http'
|
| CONTEXT_PREFIX | ''
|
| CONTEXT_DOCUMENT_ROOT | '/www/virtual/martin/stable/lupa/document_root/'
|
| SERVER_ADMIN | '[no address given]'
|
| SCRIPT_FILENAME | '/www/virtual/martin/stable/lupa/document_root/index.php'
|
| REMOTE_PORT | '43170'
|
| GATEWAY_INTERFACE | 'CGI/1.1'
|
| SERVER_PROTOCOL | 'HTTP/1.0'
|
| REQUEST_METHOD | 'GET'
|
| QUERY_STRING | |
| REQUEST_URI | |
| SCRIPT_NAME | '/clanky/regulace-podle-nis2-klamali-jste-stezuje-si-operatorske-sdruzeni-apms-na-nukib/nazory/vlakno/1/'
|
| PHP_SELF | '/clanky/regulace-podle-nis2-klamali-jste-stezuje-si-operatorske-sdruzeni-apms-na-nukib/nazory/vlakno/1/'
|
| REQUEST_TIME_FLOAT | 1763639765.177375
|
| REQUEST_TIME | 1763639765
|
| __NF | Nette Session |
|---|
| Nette.Http.UserStorage/ | null
|
|---|
| APP_DIR | '/www/virtual/martin/stable/lupa/app'
|
|---|---|
| APP_LIB_DIR | '/www/virtual/martin/stable/lupa/app/libs'
|
| LIB_DIR | '/www/virtual/martin/stable/php-libs'
|
| APP_SHARED_DIR | '/www/virtual/martin/stable/php-libs/appShare'
|
| APP_SHARED_LIB_DIR | '/www/virtual/martin/stable/php-libs/appShare/libs'
|
| APP_TEMPLATE_DIR | '/www/virtual/martin/stable/lupa/app/templates'
|
| APP_SHARED_TEMPLATE_DIR | '/www/virtual/martin/stable/php-libs/appShare/templates'
|
| WWW_DIR | '/www/virtual/martin/stable/lupa/document_root'
|
| RAMDISK | '/mnt/ramdisk'
|
| WORK_DIR | '/www/virtual/martin/stable/lupa/work'
|
| CACHE_DIR | '/www/virtual/martin/stable/lupa/work/cache'
|
| NETTE_CACHE_DIR | '/www/virtual/martin/stable/lupa/work/cache.nette'
|
| LOCAL_CACHE_DIR | '/www/virtual/martin/stable/lupa/work/cache.local'
|
| CHARSET | 'utf-8'
|
| DB_CHARSET | 'utf8'
|
| DB_ERROR_DUPLICATE_ENTRY | 1062
|
| MYSQLI_REFRESH_REPLICA | 64
|
| HTMLPURIFIER_PREFIX | '/www/virtual/martin/stable/lupa/vendor/ezyang/htmlpurifier/library'
|
| GEOIP_COUNTRY_BEGIN | 16776960
|
| GEOIP_STATE_BEGIN_REV0 | 16700000
|
| GEOIP_STATE_BEGIN_REV1 | 16000000
|
| GEOIP_STANDARD | 0
|
| GEOIP_MEMORY_CACHE | 1
|
| GEOIP_SHARED_MEMORY | 2
|
| STRUCTURE_INFO_MAX_SIZE | 20
|
| DATABASE_INFO_MAX_SIZE | 100
|
| GEOIP_COUNTRY_EDITION | 1
|
| GEOIP_PROXY_EDITION | 8
|
| GEOIP_ASNUM_EDITION | 9
|
| GEOIP_NETSPEED_EDITION | 10
|
| GEOIP_REGION_EDITION_REV0 | 7
|
| GEOIP_REGION_EDITION_REV1 | 3
|
| GEOIP_CITY_EDITION_REV0 | 6
|
| GEOIP_CITY_EDITION_REV1 | 2
|
| GEOIP_ORG_EDITION | 5
|
| GEOIP_ISP_EDITION | 4
|
| SEGMENT_RECORD_LENGTH | 3
|
| STANDARD_RECORD_LENGTH | 3
|
| ORG_RECORD_LENGTH | 4
|
| MAX_RECORD_LENGTH | 4
|
| MAX_ORG_RECORD_LENGTH | 300
|
| GEOIP_SHM_KEY | 1329681409
|
| US_OFFSET | 1
|
| CANADA_OFFSET | 677
|
| WORLD_OFFSET | 1353
|
| FIPS_RANGE | 360
|
| GEOIP_UNKNOWN_SPEED | 0
|
| GEOIP_DIALUP_SPEED | 1
|
| GEOIP_CABLEDSL_SPEED | 2
|
| GEOIP_CORPORATE_SPEED | 3
|
| GEOIP_DOMAIN_EDITION | 11
|
| GEOIP_COUNTRY_EDITION_V6 | 12
|
| GEOIP_LOCATIONA_EDITION | 13
|
| GEOIP_ACCURACYRADIUS_EDITION | 14
|
| GEOIP_CITYCOMBINED_EDITION | 15
|
| GEOIP_CITY_EDITION_REV1_V6 | 30
|
| GEOIP_CITY_EDITION_REV0_V6 | 31
|
| GEOIP_NETSPEED_EDITION_REV1 | 32
|
| GEOIP_NETSPEED_EDITION_REV1_V6 | 33
|
| GEOIP_USERTYPE_EDITION | 28
|
| GEOIP_USERTYPE_EDITION_V6 | 29
|
| GEOIP_ASNUM_EDITION_V6 | 21
|
| GEOIP_ISP_EDITION_V6 | 22
|
| GEOIP_ORG_EDITION_V6 | 23
|
| GEOIP_DOMAIN_EDITION_V6 | 24
|
| CITYCOMBINED_FIXED_RECORD | 7
|
| FULL_RECORD_LENGTH | 50
|
| TEXY_ALL | true
|
| TEXY_NONE | false
|
| TEXY_CONTENT_MARKUP | |
| TEXY_CONTENT_REPLACED | |
| TEXY_CONTENT_TEXTUAL | |
| TEXY_CONTENT_BLOCK | |
| TEXY_VERSION | '2.9.3'
|
| TEXY_HEADING_DYNAMIC | 1
|
| TEXY_HEADING_FIXED | 2
|
| TEXY_CHAR | 'A-Za-z\x{C0}-\x{2FF}\x{370}-\x{1EFF}'
|
| TEXY_MARK | '\x14-\x1F'
|
| TEXY_MODIFIER | |
| TEXY_MODIFIER_H | |
| TEXY_MODIFIER_HV | |
| TEXY_IMAGE | |
| TEXY_LINK_URL | |
| TEXY_LINK | |
| TEXY_LINK_N | |
| TEXY_EMAIL | |
| TEXY_URLSCHEME | '[a-z][a-z0-9+.-]{0,20}:'
|
| Apache Version | Apache/2.4.38 (Debian) |
| Apache API Version | 20120211 |
| Server Administrator | [no address given] |
| Hostname:Port | lupa-martin.imho.cz:0 |
| User/Group | www-data(33)/33 |
| Max Requests | Per Child: 0 - Keep Alive: on - Max Per Connection: 100 |
| Timeouts | Connection: 300 - Keep-Alive: 5 |
| Virtual Server | Yes |
| Server Root | /etc/apache2 |
| Loaded Modules | core mod_so mod_watchdog http_core mod_log_config mod_logio mod_version mod_unixd mod_access_compat mod_alias mod_auth_basic mod_authn_core mod_authn_file mod_authz_core mod_authz_groupfile mod_authz_host mod_authz_user mod_autoindex mod_cache mod_cgi mod_deflate mod_dir mod_env mod_expires mod_fcgid mod_file_cache mod_filter mod_headers mod_include mod_mime prefork mod_negotiation mod_php mod_proxy mod_proxy_connect mod_proxy_fcgi mod_proxy_http mod_remoteip mod_reqtimeout mod_rewrite mod_setenvif mod_slotmem_shm mod_socache_shmcb mod_ssl mod_status mod_userdir |
| Directive | Local Value | Master Value |
|---|---|---|
| engine | On | On |
| last_modified | Off | Off |
| xbithack | Off | Off |
| Variable | Value |
|---|---|
| HTTPS | on |
| SCRIPT_URL | /clanky/regulace-podle-nis2-klamali-jste-stezuje-si-operatorske-sdruzeni-apms-na-nukib/nazory/vlakno/1/ |
| SCRIPT_URI | http://lupa-martin.imho.cz/clanky/regulace-podle-nis2-klamali-jste-stezuje-si-operatorske-sdruzeni-apms-na-nukib/nazory/vlakno/1/ |
| TZ | Europe/Prague |
| HTTP_HOST | lupa-martin.imho.cz |
| HTTP_ACCESS_CONTROL_ALLOW_ORIGIN | * |
| HTTP_REFERRER_POLICY | no-referrer-when-downgrade |
| HTTP_X_REAL_IP | 216.73.216.174 |
| HTTP_CONNECTION | close |
| HTTP_ACCEPT | */* |
| HTTP_USER_AGENT | Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com) |
| HTTP_ACCEPT_ENCODING | gzip, br, zstd, deflate |
| HTTP_COOKIE | _nss=1; tracy-session=676000cdd2; opinionsOrdering=insert_flat |
| HTTP_X_HTTPS | 1 |
| PATH | /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
| LD_LIBRARY_PATH | /opt/mozjpeg/lib64 |
| SERVER_SIGNATURE | <address>Apache/2.4.38 (Debian) Server at lupa-martin.imho.cz Port 80</address> |
| SERVER_SOFTWARE | Apache/2.4.38 (Debian) |
| SERVER_NAME | lupa-martin.imho.cz |
| SERVER_ADDR | 127.0.0.1 |
| SERVER_PORT | 80 |
| REMOTE_ADDR | 216.73.216.174 |
| DOCUMENT_ROOT | /www/virtual/martin/stable/lupa/document_root/ |
| REQUEST_SCHEME | http |
| CONTEXT_PREFIX | no value |
| CONTEXT_DOCUMENT_ROOT | /www/virtual/martin/stable/lupa/document_root/ |
| SERVER_ADMIN | [no address given] |
| SCRIPT_FILENAME | /www/virtual/martin/stable/lupa/document_root/index.php |
| REMOTE_PORT | 43170 |
| GATEWAY_INTERFACE | CGI/1.1 |
| SERVER_PROTOCOL | HTTP/1.0 |
| REQUEST_METHOD | GET |
| QUERY_STRING | do=opinionsListing-reorder&opinionsListing-order=insert |
| REQUEST_URI | /clanky/regulace-podle-nis2-klamali-jste-stezuje-si-operatorske-sdruzeni-apms-na-nukib/nazory/vlakno/1/?do=opinionsListing-reorder&opinionsListing-order=insert |
| SCRIPT_NAME | /clanky/regulace-podle-nis2-klamali-jste-stezuje-si-operatorske-sdruzeni-apms-na-nukib/nazory/vlakno/1/ |
| HTTP Request Headers | |
|---|---|
| HTTP Request | GET /clanky/regulace-podle-nis2-klamali-jste-stezuje-si-operatorske-sdruzeni-apms-na-nukib/nazory/vlakno/1/?do=opinionsListing-reorder&opinionsListing-order=insert HTTP/1.0 |
| Host | lupa-martin.imho.cz |
| HTTP_X_FORWARDED_PROTO | https |
| Access-Control-Allow-Origin | * |
| Referrer-Policy | no-referrer-when-downgrade |
| X-Real-IP | 216.73.216.174 |
| Connection | close |
| accept | */* |
| user-agent | Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com) |
| accept-encoding | gzip, br, zstd, deflate |
| cookie | _nss=1; tracy-session=676000cdd2; opinionsOrdering=insert_flat |
| X-HTTPS | 1 |
| HTTP Response Headers | |
| X-Powered-By | Nette Framework 3 |
| X-Frame-Options | SAMEORIGIN |
| Set-Cookie | _nss=1; path=/; secure; HttpOnly; SameSite=Strict |
| Vary | X-Requested-With,Accept-Encoding |
| Set-Cookie | opinionsOrdering=insert; expires=Sat, 20-Dec-2025 11:56:05 GMT; Max-Age=2592000; path=/; secure; HttpOnly; SameSite=Lax |
| Content-Security-Policy | upgrade-insecure-requests |
| Content-Encoding | gzip |
| Referrer-Policy | no-referrer-when-downgrade |
| Access-Control-Allow-Origin | * |
| Access-Control-Allow-Headers | * |
| Connection | close |
| Content-Type | text/html; charset=utf-8 |
| BCMath support | enabled |
| Directive | Local Value | Master Value |
|---|---|---|
| bcmath.scale | 0 | 0 |
| BZip2 Support | Enabled |
| Stream Wrapper support | compress.bzip2:// |
| Stream Filter support | bzip2.decompress, bzip2.compress |
| BZip2 Version | 1.0.6, 6-Sept-2010 |
| Calendar support | enabled |
| PHP Version | 8.0.30 |
| Directive | Local Value | Master Value |
|---|---|---|
| allow_url_fopen | On | On |
| allow_url_include | Off | Off |
| arg_separator.input | & | & |
| arg_separator.output | & | & |
| auto_append_file | no value | no value |
| auto_globals_jit | On | On |
| auto_prepend_file | no value | no value |
| browscap | no value | no value |
| default_charset | UTF-8 | UTF-8 |
| default_mimetype | text/html | text/html |
| disable_classes | no value | no value |
| disable_functions | pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, | pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare, |
| display_errors | On | Off |
| display_startup_errors | Off | Off |
| doc_root | no value | no value |
| docref_ext | no value | no value |
| docref_root | no value | no value |
| enable_dl | Off | Off |
| enable_post_data_reading | On | On |
| error_append_string | no value | no value |
| error_log | no value | no value |
| error_prepend_string | no value | no value |
| error_reporting | 32767 | 22527 |
| expose_php | Off | Off |
| extension_dir | /usr/lib/php/20200930 | /usr/lib/php/20200930 |
| file_uploads | On | On |
| hard_timeout | 2 | 2 |
| highlight.comment | #998; font-style: italic | #FF8000 |
| highlight.default | #000 | #0000BB |
| highlight.html | #06B | #000000 |
| highlight.keyword | #D24; font-weight: bold | #007700 |
| highlight.string | #080 | #DD0000 |
| html_errors | Off | On |
| ignore_repeated_errors | Off | Off |
| ignore_repeated_source | Off | Off |
| ignore_user_abort | Off | Off |
| implicit_flush | Off | Off |
| include_path | .:/usr/share/php:/www/virtual/martin/stable/php-libs:/www/virtual/martin/stable/lupa/app/libs:/www/virtual/martin/stable/php-libs/appShare/libs | .:/usr/share/php |
| input_encoding | no value | no value |
| internal_encoding | no value | no value |
| log_errors | Off | On |
| log_errors_max_len | 1024 | 1024 |
| mail.add_x_header | Off | Off |
| mail.force_extra_parameters | no value | no value |
| mail.log | no value | no value |
| max_execution_time | 3600 | 3600 |
| max_file_uploads | 20 | 20 |
| max_input_nesting_level | 64 | 64 |
| max_input_time | 60 | 60 |
| max_input_vars | 1000 | 1000 |
| max_multipart_body_parts | -1 | -1 |
| memory_limit | 256M | 256M |
| open_basedir | no value | no value |
| output_buffering | 4096 | 4096 |
| output_encoding | no value | no value |
| output_handler | no value | no value |
| post_max_size | 128M | 128M |
| precision | 14 | 14 |
| realpath_cache_size | 4096K | 4096K |
| realpath_cache_ttl | 120 | 120 |
| register_argc_argv | Off | Off |
| report_memleaks | On | On |
| report_zend_debug | Off | Off |
| request_order | GP | GP |
| sendmail_from | no value | no value |
| sendmail_path | /usr/sbin/sendmail -t -i | /usr/sbin/sendmail -t -i |
| serialize_precision | -1 | -1 |
| short_open_tag | Off | Off |
| SMTP | localhost | localhost |
| smtp_port | 25 | 25 |
| sys_temp_dir | no value | no value |
| syslog.facility | LOG_USER | LOG_USER |
| syslog.filter | no-ctrl | no-ctrl |
| syslog.ident | php | php |
| unserialize_callback_func | no value | no value |
| upload_max_filesize | 128M | 128M |
| upload_tmp_dir | no value | no value |
| user_dir | no value | no value |
| user_ini.cache_ttl | 300 | 300 |
| user_ini.filename | .user.ini | .user.ini |
| variables_order | GPCS | GPCS |
| xmlrpc_error_number | 0 | 0 |
| xmlrpc_errors | Off | Off |
| zend.assertions | -1 | -1 |
| zend.detect_unicode | On | On |
| zend.enable_gc | On | On |
| zend.exception_ignore_args | Off | On |
| zend.exception_string_param_max_len | 0 | 0 |
| zend.multibyte | Off | Off |
| zend.script_encoding | no value | no value |
| zend.signal_check | Off | Off |
| ctype functions | enabled |
| cURL support | enabled |
| cURL Information | 7.64.0 |
| Age | 4 |
| Features | |
| AsynchDNS | Yes |
| CharConv | No |
| Debug | No |
| GSS-Negotiate | No |
| IDN | Yes |
| IPv6 | Yes |
| krb4 | No |
| Largefile | Yes |
| libz | Yes |
| NTLM | Yes |
| NTLMWB | Yes |
| SPNEGO | Yes |
| SSL | Yes |
| SSPI | No |
| TLS-SRP | Yes |
| HTTP2 | Yes |
| GSSAPI | Yes |
| KERBEROS5 | Yes |
| UNIX_SOCKETS | Yes |
| PSL | Yes |
| HTTPS_PROXY | Yes |
| MULTI_SSL | No |
| BROTLI | No |
| Protocols | dict, file, ftp, ftps, gopher, http, https, imap, imaps, ldap, ldaps, pop3, pop3s, rtmp, rtsp, scp, sftp, smb, smbs, smtp, smtps, telnet, tftp |
| Host | x86_64-pc-linux-gnu |
| SSL Version | OpenSSL/1.1.1d |
| ZLib Version | 1.2.11 |
| libSSH Version | libssh2/1.8.0 |
| Directive | Local Value | Master Value |
|---|---|---|
| curl.cainfo | no value | no value |
| date/time support | enabled |
| timelib version | 2020.03 |
| "Olson" Timezone Database Version | 0.system |
| Timezone Database | internal |
| Default timezone | Europe/Berlin |
| Directive | Local Value | Master Value |
|---|---|---|
| date.default_latitude | 31.7667 | 31.7667 |
| date.default_longitude | 35.2333 | 35.2333 |
| date.sunrise_zenith | 90.833333 | 90.833333 |
| date.sunset_zenith | 90.833333 | 90.833333 |
| date.timezone | no value | no value |
| DOM/XML | enabled |
| DOM/XML API Version | 20031129 |
| libxml Version | 2.9.14 |
| HTML Support | enabled |
| XPath Support | enabled |
| XPointer Support | enabled |
| Schema Support | enabled |
| RelaxNG Support | enabled |
| EXIF Support | enabled |
| Supported EXIF Version | 0220 |
| Supported filetypes | JPEG, TIFF |
| Multibyte decoding support using mbstring | enabled |
| Extended EXIF tag formats | Canon, Casio, Fujifilm, Nikon, Olympus, Samsung, Panasonic, DJI, Sony, Pentax, Minolta, Sigma, Foveon, Kyocera, Ricoh, AGFA, Epson |
| Directive | Local Value | Master Value |
|---|---|---|
| exif.decode_jis_intel | JIS | JIS |
| exif.decode_jis_motorola | JIS | JIS |
| exif.decode_unicode_intel | UCS-2LE | UCS-2LE |
| exif.decode_unicode_motorola | UCS-2BE | UCS-2BE |
| exif.encode_jis | no value | no value |
| exif.encode_unicode | ISO-8859-15 | ISO-8859-15 |
| FFI support | enabled |
|---|
| Directive | Local Value | Master Value |
|---|---|---|
| ffi.enable | preload | preload |
| ffi.preload | no value | no value |
| fileinfo support | enabled |
| libmagic | 539 |
| Input Validation and Filtering | enabled |
| Directive | Local Value | Master Value |
|---|---|---|
| filter.default | unsafe_raw | unsafe_raw |
| filter.default_flags | no value | no value |
| FTP support | enabled |
| FTPS support | enabled |
| GD Support | enabled |
| GD headers Version | 2.3.3 |
| GD library Version | 2.2.5 |
| FreeType Support | enabled |
| FreeType Linkage | with freetype |
| GIF Read Support | enabled |
| GIF Create Support | enabled |
| JPEG Support | enabled |
| PNG Support | enabled |
| WBMP Support | enabled |
| XPM Support | enabled |
| XBM Support | enabled |
| WebP Support | enabled |
| BMP Support | enabled |
| TGA Read Support | enabled |
| Directive | Local Value | Master Value |
|---|---|---|
| gd.jpeg_ignore_warning | 1 | 1 |
| GetText Support | enabled |
| gmp support | enabled |
| GMP version | 6.1.2 |
| hash support | enabled |
| Hashing Engines | md2 md4 md5 sha1 sha224 sha256 sha384 sha512/224 sha512/256 sha512 sha3-224 sha3-256 sha3-384 sha3-512 ripemd128 ripemd160 ripemd256 ripemd320 whirlpool tiger128,3 tiger160,3 tiger192,3 tiger128,4 tiger160,4 tiger192,4 snefru snefru256 gost gost-crypto adler32 crc32 crc32b crc32c fnv132 fnv1a32 fnv164 fnv1a64 joaat haval128,3 haval160,3 haval192,3 haval224,3 haval256,3 haval128,4 haval160,4 haval192,4 haval224,4 haval256,4 haval128,5 haval160,5 haval192,5 haval224,5 haval256,5 |
| MHASH support | Enabled |
| MHASH API Version | Emulated Support |
| iconv support | enabled |
| iconv implementation | glibc |
| iconv library version | 2.28 |
| Directive | Local Value | Master Value |
|---|---|---|
| iconv.input_encoding | no value | no value |
| iconv.internal_encoding | no value | no value |
| iconv.output_encoding | no value | no value |
| igbinary support | enabled |
| igbinary version | 3.2.13 |
| igbinary APCu serializer ABI | 0 |
| igbinary session support | yes |
| Directive | Local Value | Master Value |
|---|---|---|
| igbinary.compact_strings | On | On |
| imagick module | enabled |
|---|---|
| imagick module version | 3.6.0 |
| imagick classes | Imagick, ImagickDraw, ImagickPixel, ImagickPixelIterator, ImagickKernel |
| Imagick compiled with ImageMagick version | ImageMagick 6.9.10-23 Q16 x86_64 20190101 https://imagemagick.org |
| Imagick using ImageMagick library version | ImageMagick 6.9.10-23 Q16 x86_64 20190101 https://imagemagick.org |
| ImageMagick copyright | © 1999-2019 ImageMagick Studio LLC |
| ImageMagick release date | 20190101 |
| ImageMagick number of supported formats: | 242 |
| ImageMagick supported formats | 3FR, 3G2, 3GP, AAI, AI, ART, ARW, AVI, AVS, BGR, BGRA, BGRO, BIE, BMP, BMP2, BMP3, BRF, CAL, CALS, CANVAS, CAPTION, CIN, CIP, CLIP, CMYK, CMYKA, CR2, CRW, CUR, CUT, DATA, DCM, DCR, DCX, DDS, DFONT, DJVU, DNG, DOT, DPX, DXT1, DXT5, EPDF, EPI, EPS, EPS2, EPS3, EPSF, EPSI, EPT, EPT2, EPT3, ERF, EXR, FAX, FILE, FITS, FRACTAL, FTP, FTS, G3, G4, GIF, GIF87, GRADIENT, GRAY, GRAYA, GROUP4, GV, H, HALD, HDR, HEIC, HISTOGRAM, HRZ, HTM, HTML, HTTP, HTTPS, ICB, ICO, ICON, IIQ, INFO, INLINE, IPL, ISOBRL, ISOBRL6, J2C, J2K, JBG, JBIG, JNG, JNX, JP2, JPC, JPE, JPEG, JPG, JPM, JPS, JPT, JSON, K25, KDC, LABEL, M2V, M4V, MAC, MAGICK, MAP, MASK, MAT, MATTE, MEF, MIFF, MKV, MNG, MONO, MOV, MP4, MPC, MPEG, MPG, MRW, MSL, MSVG, MTV, MVG, NEF, NRW, NULL, ORF, OTB, OTF, PAL, PALM, PAM, PANGO, PATTERN, PBM, PCD, PCDS, PCL, PCT, PCX, PDB, PDF, PDFA, PEF, PES, PFA, PFB, PFM, PGM, PGX, PICON, PICT, PIX, PJPEG, PLASMA, PNG, PNG00, PNG24, PNG32, PNG48, PNG64, PNG8, PNM, PPM, PREVIEW, PS, PS2, PS3, PSB, PSD, PTIF, PWP, RADIAL-GRADIENT, RAF, RAS, RAW, RGB, RGBA, RGBO, RGF, RLA, RLE, RMF, RW2, SCR, SCT, SFW, SGI, SHTML, SIX, SIXEL, SPARSE-COLOR, SR2, SRF, STEGANO, SUN, SVG, SVGZ, TEXT, TGA, THUMBNAIL, TIFF, TIFF64, TILE, TIM, TTC, TTF, TXT, UBRL, UBRL6, UIL, UYVY, VDA, VICAR, VID, VIFF, VIPS, VST, WBMP, WEBP, WMF, WMV, WMZ, WPG, X, X3F, XBM, XC, XCF, XPM, XPS, XV, XWD, YCbCr, YCbCrA, YUV |
| Directive | Local Value | Master Value |
|---|---|---|
| imagick.allow_zero_dimension_images | 0 | 0 |
| imagick.locale_fix | 0 | 0 |
| imagick.progress_monitor | 0 | 0 |
| imagick.set_single_thread | 1 | 1 |
| imagick.shutdown_sleep_count | 10 | 10 |
| imagick.skip_version_check | 1 | 1 |
| IMAP c-Client Version | 2007f |
| SSL Support | enabled |
| Kerberos Support | enabled |
| Directive | Local Value | Master Value |
|---|---|---|
| imap.enable_insecure_rsh | Off | Off |
| Internationalization support | enabled |
|---|---|
| ICU version | 65.1 |
| ICU Data version | 65.1 |
| ICU Unicode version | 12.1 |
| Directive | Local Value | Master Value |
|---|---|---|
| intl.default_locale | cs-CZ | no value |
| intl.error_level | 0 | 0 |
| intl.use_exceptions | Off | Off |
| json support | enabled |
| LDAP Support | enabled |
| Total Links | 0/unlimited |
| API Version | 3001 |
| Vendor Name | OpenLDAP |
| Vendor Version | 20447 |
| SASL Support | Enabled |
| Directive | Local Value | Master Value |
|---|---|---|
| ldap.max_links | Unlimited | Unlimited |
| libXML support | active |
| libXML Compiled Version | 2.9.14 |
| libXML Loaded Version | 20912 |
| libXML streams | enabled |
| Multibyte Support | enabled |
| Multibyte string engine | libmbfl |
| HTTP input encoding translation | disabled |
| libmbfl version | 1.3.2 |
| mbstring extension makes use of "streamable kanji code filter and converter", which is distributed under the GNU Lesser General Public License version 2.1. |
|---|
| Multibyte (japanese) regex support | enabled |
| Multibyte regex (oniguruma) version | 6.9.1 |
| Directive | Local Value | Master Value |
|---|---|---|
| mbstring.detect_order | no value | no value |
| mbstring.encoding_translation | Off | Off |
| mbstring.http_input | no value | no value |
| mbstring.http_output | no value | no value |
| mbstring.http_output_conv_mimetypes | ^(text/|application/xhtml\+xml) | ^(text/|application/xhtml\+xml) |
| mbstring.internal_encoding | no value | no value |
| mbstring.language | neutral | neutral |
| mbstring.regex_retry_limit | 1000000 | 1000000 |
| mbstring.regex_stack_limit | 100000 | 100000 |
| mbstring.strict_detection | Off | Off |
| mbstring.substitute_character | no value | no value |
| MysqlI Support | enabled |
|---|---|
| Client API library version | mysqlnd 8.0.30 |
| Active Persistent Links | 0 |
| Inactive Persistent Links | 0 |
| Active Links | 3 |
| Directive | Local Value | Master Value |
|---|---|---|
| mysqli.allow_local_infile | Off | Off |
| mysqli.allow_persistent | On | On |
| mysqli.default_host | no value | no value |
| mysqli.default_port | 3306 | 3306 |
| mysqli.default_pw | no value | no value |
| mysqli.default_socket | /var/run/mysqld/mysqld.sock | /var/run/mysqld/mysqld.sock |
| mysqli.default_user | no value | no value |
| mysqli.max_links | Unlimited | Unlimited |
| mysqli.max_persistent | Unlimited | Unlimited |
| mysqli.reconnect | Off | Off |
| mysqli.rollback_on_cached_plink | Off | Off |
| mysqlnd | enabled |
|---|---|
| Version | mysqlnd 8.0.30 |
| Compression | supported |
| core SSL | supported |
| extended SSL | supported |
| Command buffer size | 4096 |
| Read buffer size | 32768 |
| Read timeout | 86400 |
| Collecting statistics | Yes |
| Collecting memory statistics | No |
| Tracing | n/a |
| Loaded plugins | mysqlnd,debug_trace,auth_plugin_mysql_native_password,auth_plugin_mysql_clear_password,auth_plugin_caching_sha2_password,auth_plugin_sha256_password |
| API Extensions | mysqli,pdo_mysql |
| ODBC Support | enabled |
|---|---|
| Active Persistent Links | 0 |
| Active Links | 0 |
| ODBC library | unixODBC |
| ODBCVER | 0x0380 |
| ODBC_CFLAGS | -I/usr/include |
| ODBC_LFLAGS | -L/usr/lib |
| ODBC_LIBS | -lodbc |
| Directive | Local Value | Master Value |
|---|---|---|
| odbc.allow_persistent | On | On |
| odbc.check_persistent | On | On |
| odbc.default_cursortype | Static cursor | Static cursor |
| odbc.default_db | no value | no value |
| odbc.default_pw | no value | no value |
| odbc.default_user | no value | no value |
| odbc.defaultbinmode | return as is | return as is |
| odbc.defaultlrl | return up to 4096 bytes | return up to 4096 bytes |
| odbc.max_links | Unlimited | Unlimited |
| odbc.max_persistent | Unlimited | Unlimited |
| OpenSSL support | enabled |
| OpenSSL Library Version | OpenSSL 1.1.1d 10 Sep 2019 |
| OpenSSL Header Version | OpenSSL 1.1.1n 15 Mar 2022 |
| Openssl default config | /usr/lib/ssl/openssl.cnf |
| Directive | Local Value | Master Value |
|---|---|---|
| openssl.cafile | no value | no value |
| openssl.capath | no value | no value |
| PCRE (Perl Compatible Regular Expressions) Support | enabled |
| PCRE Library Version | 10.39 2021-10-29 |
| PCRE Unicode Version | 14.0.0 |
| PCRE JIT Support | enabled |
| PCRE JIT Target | x86 64bit (little endian + unaligned) |
| Directive | Local Value | Master Value |
|---|---|---|
| pcre.backtrack_limit | 1000000 | 1000000 |
| pcre.jit | 1 | 1 |
| pcre.recursion_limit | 100000 | 100000 |
| PDO support | enabled |
|---|---|
| PDO drivers | firebird, mysql, odbc, sqlite, sqlsrv |
| PDO Driver for Firebird | enabled |
|---|---|
| Client Library Version | LI-V6.3.5.33100 Firebird 3.0 |
| PDO Driver for MySQL | enabled |
|---|---|
| Client API version | mysqlnd 8.0.30 |
| Directive | Local Value | Master Value |
|---|---|---|
| pdo_mysql.default_socket | /var/run/mysqld/mysqld.sock | /var/run/mysqld/mysqld.sock |
| PDO Driver for ODBC (unixODBC) | enabled |
|---|---|
| ODBC Connection Pooling | Enabled, strict matching |
| PDO Driver for SQLite 3.x | enabled |
|---|---|
| SQLite Library | 3.27.2 |
| pdo_sqlsrv support | enabled |
|---|---|
| ExtensionVer | 5.11.0 |
| Directive | Local Value | Master Value |
|---|---|---|
| pdo_sqlsrv.client_buffer_max_kb_size | 10240 | 10240 |
| pdo_sqlsrv.log_severity | 0 | 0 |
| pdo_sqlsrv.report_additional_errors | 1 | 1 |
| pdo_sqlsrv.set_locale_info | 2 | 2 |
| Phar: PHP Archive support | enabled |
|---|---|
| Phar API version | 1.1.1 |
| Phar-based phar archives | enabled |
| Tar-based phar archives | enabled |
| ZIP-based phar archives | enabled |
| gzip compression | enabled |
| bzip2 compression | enabled |
| Native OpenSSL support | enabled |
|
Phar based on pear/PHP_Archive, original concept by Davey Shafik. Phar fully realized by Gregory Beaver and Marcus Boerger. Portions of tar implementation Copyright (c) 2003-2009 Tim Kientzle. |
| Directive | Local Value | Master Value |
|---|---|---|
| phar.cache_list | no value | no value |
| phar.readonly | On | On |
| phar.require_hash | On | On |
| POSIX support | enabled |
| PSpell Support | enabled |
| Readline Support | enabled |
|---|---|
| Readline library | EditLine wrapper |
| Directive | Local Value | Master Value |
|---|---|---|
| cli.pager | no value | no value |
| cli.prompt | \b \> | \b \> |
| Reflection | enabled |
| Session Support | enabled |
| Registered save handlers | files user |
| Registered serializer handlers | php_serialize php php_binary igbinary |
| Directive | Local Value | Master Value |
|---|---|---|
| session.auto_start | Off | Off |
| session.cache_expire | 180 | 180 |
| session.cache_limiter | nocache | nocache |
| session.cookie_domain | no value | no value |
| session.cookie_httponly | no value | no value |
| session.cookie_lifetime | 0 | 0 |
| session.cookie_path | / | / |
| session.cookie_samesite | no value | no value |
| session.cookie_secure | 0 | 0 |
| session.gc_divisor | 1000 | 1000 |
| session.gc_maxlifetime | 1440 | 1440 |
| session.gc_probability | 0 | 0 |
| session.lazy_write | On | On |
| session.name | PHPSESSID | PHPSESSID |
| session.referer_check | no value | no value |
| session.save_handler | files | files |
| session.save_path | /var/lib/php/sessions | /var/lib/php/sessions |
| session.serialize_handler | php | php |
| session.sid_bits_per_character | 5 | 5 |
| session.sid_length | 26 | 26 |
| session.upload_progress.cleanup | On | On |
| session.upload_progress.enabled | On | On |
| session.upload_progress.freq | 1% | 1% |
| session.upload_progress.min_freq | 1 | 1 |
| session.upload_progress.name | PHP_SESSION_UPLOAD_PROGRESS | PHP_SESSION_UPLOAD_PROGRESS |
| session.upload_progress.prefix | upload_progress_ | upload_progress_ |
| session.use_cookies | 1 | 1 |
| session.use_only_cookies | 1 | 1 |
| session.use_strict_mode | 0 | 0 |
| session.use_trans_sid | 0 | 0 |
| shmop support | enabled |
| SimpleXML support | enabled |
| Schema support | enabled |
| NET-SNMP Support | enabled |
| NET-SNMP Version | 5.7.3 |
| Soap Client | enabled |
| Soap Server | enabled |
| Directive | Local Value | Master Value |
|---|---|---|
| soap.wsdl_cache | 1 | 1 |
| soap.wsdl_cache_dir | /tmp | /tmp |
| soap.wsdl_cache_enabled | On | On |
| soap.wsdl_cache_limit | 5 | 5 |
| soap.wsdl_cache_ttl | 86400 | 86400 |
| Sockets Support | enabled |
| sodium support | enabled |
|---|---|
| libsodium headers version | 1.0.18 |
| libsodium library version | 1.0.18 |
| SPL support | enabled |
|---|---|
| Interfaces | OuterIterator, RecursiveIterator, SeekableIterator, SplObserver, SplSubject |
| Classes | AppendIterator, ArrayIterator, ArrayObject, BadFunctionCallException, BadMethodCallException, CachingIterator, CallbackFilterIterator, DirectoryIterator, DomainException, EmptyIterator, FilesystemIterator, FilterIterator, GlobIterator, InfiniteIterator, InvalidArgumentException, IteratorIterator, LengthException, LimitIterator, LogicException, MultipleIterator, NoRewindIterator, OutOfBoundsException, OutOfRangeException, OverflowException, ParentIterator, RangeException, RecursiveArrayIterator, RecursiveCachingIterator, RecursiveCallbackFilterIterator, RecursiveDirectoryIterator, RecursiveFilterIterator, RecursiveIteratorIterator, RecursiveRegexIterator, RecursiveTreeIterator, RegexIterator, RuntimeException, SplDoublyLinkedList, SplFileInfo, SplFileObject, SplFixedArray, SplHeap, SplMinHeap, SplMaxHeap, SplObjectStorage, SplPriorityQueue, SplQueue, SplStack, SplTempFileObject, UnderflowException, UnexpectedValueException |
| SQLite3 support | enabled |
|---|---|
| SQLite Library | 3.27.2 |
| Directive | Local Value | Master Value |
|---|---|---|
| sqlite3.defensive | On | On |
| sqlite3.extension_dir | no value | no value |
| sqlsrv support | enabled |
|---|---|
| ExtensionVer | 5.11.0 |
| Directive | Local Value | Master Value |
|---|---|---|
| sqlsrv.ClientBufferMaxKBSize | 10240 | 10240 |
| sqlsrv.LogSeverity | 0 | 0 |
| sqlsrv.LogSubsystems | 0 | 0 |
| sqlsrv.SetLocaleInfo | 2 | 2 |
| sqlsrv.WarningsReturnAsErrors | On | On |
| Dynamic Library Support | enabled |
| Path to sendmail | /usr/sbin/sendmail -t -i |
| Directive | Local Value | Master Value |
|---|---|---|
| assert.active | On | On |
| assert.bail | Off | Off |
| assert.callback | no value | no value |
| assert.exception | On | On |
| assert.warning | On | On |
| auto_detect_line_endings | Off | Off |
| default_socket_timeout | 60 | 60 |
| from | no value | no value |
| session.trans_sid_hosts | no value | no value |
| session.trans_sid_tags | a=href,area=href,frame=src,form= | a=href,area=href,frame=src,form= |
| unserialize_max_depth | 4096 | 4096 |
| url_rewriter.hosts | no value | no value |
| url_rewriter.tags | form= | form= |
| user_agent | no value | no value |
| sysvmsg support | enabled |
| sysvsem support | enabled |
| sysvshm support | enabled |
| Tidy support | enabled |
| libTidy Version | 5.6.0 |
| libTidy Release | 2017/11/25 |
| Directive | Local Value | Master Value |
|---|---|---|
| tidy.clean_output | no value | no value |
| tidy.default_config | no value | no value |
| Tokenizer Support | enabled |
| Version | 3.2.1 |
| Support Xdebug on Patreon, GitHub, or as a business | |
| Enabled Features (through 'xdebug.mode' setting) | ||
|---|---|---|
| Feature | Enabled/Disabled | Docs |
| Development Helpers | ✘ disabled | ⊕ |
| Coverage | ✘ disabled | ⊕ |
| GC Stats | ✘ disabled | ⊕ |
| Profiler | ✘ disabled | ⊕ |
| Step Debugger | ✔ enabled | ⊕ |
| Tracing | ✘ disabled | ⊕ |
| Optional Features | |
|---|---|
| Compressed File Support | no |
| Clock Source | clock_gettime |
| 'xdebug://gateway' pseudo-host support | yes |
| 'xdebug://nameserver' pseudo-host support | yes |
| Systemd Private Temp Directory | /tmp/systemd-private-3221d60dabd645c689c09873db6cf172-apache2.service-95ACom |
| Debugger | enabled |
|---|---|
| IDE Key | no value |
| Directive | Local Value | Master Value |
|---|---|---|
| xdebug.auto_trace | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.cli_color | 0 | 0 |
| xdebug.client_discovery_header | HTTP_X_FORWARDED_FOR,REMOTE_ADDR | HTTP_X_FORWARDED_FOR,REMOTE_ADDR |
| xdebug.client_host | localhost | localhost |
| xdebug.client_port | 9003 | 9003 |
| xdebug.cloud_id | no value | no value |
| xdebug.collect_assignments | Off | Off |
| xdebug.collect_includes | (setting removed in Xdebug 3) | (setting removed in Xdebug 3) |
| xdebug.collect_params | (setting removed in Xdebug 3) | (setting removed in Xdebug 3) |
| xdebug.collect_return | Off | Off |
| xdebug.collect_vars | (setting removed in Xdebug 3) | (setting removed in Xdebug 3) |
| xdebug.connect_timeout_ms | 200 | 200 |
| xdebug.coverage_enable | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.default_enable | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.discover_client_host | On | On |
| xdebug.dump.COOKIE | no value | no value |
| xdebug.dump.ENV | no value | no value |
| xdebug.dump.FILES | no value | no value |
| xdebug.dump.GET | no value | no value |
| xdebug.dump.POST | no value | no value |
| xdebug.dump.REQUEST | no value | no value |
| xdebug.dump.SERVER | no value | no value |
| xdebug.dump.SESSION | no value | no value |
| xdebug.dump_globals | On | On |
| xdebug.dump_once | On | On |
| xdebug.dump_undefined | Off | Off |
| xdebug.file_link_format | no value | no value |
| xdebug.filename_format | no value | no value |
| xdebug.force_display_errors | Off | Off |
| xdebug.force_error_reporting | 0 | 0 |
| xdebug.gc_stats_enable | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.gc_stats_output_dir | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.gc_stats_output_name | gcstats.%p | gcstats.%p |
| xdebug.halt_level | 0 | 0 |
| xdebug.idekey | no value | no value |
| xdebug.log | no value | no value |
| xdebug.log_level | 7 | 7 |
| xdebug.max_nesting_level | 256 | 256 |
| xdebug.max_stack_frames | -1 | -1 |
| xdebug.mode | debug | debug |
| xdebug.output_dir | /tmp | /tmp |
| xdebug.overload_var_dump | (setting removed in Xdebug 3) | (setting removed in Xdebug 3) |
| xdebug.profiler_append | Off | Off |
| xdebug.profiler_enable | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.profiler_enable_trigger | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.profiler_enable_trigger_value | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.profiler_output_dir | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.profiler_output_name | cachegrind.out.%p | cachegrind.out.%p |
| xdebug.remote_autostart | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.remote_connect_back | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.remote_enable | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.remote_host | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.remote_log | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.remote_log_level | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.remote_mode | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.remote_port | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.remote_timeout | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.scream | Off | Off |
| xdebug.show_error_trace | Off | Off |
| xdebug.show_exception_trace | Off | Off |
| xdebug.show_local_vars | Off | Off |
| xdebug.show_mem_delta | (setting removed in Xdebug 3) | (setting removed in Xdebug 3) |
| xdebug.start_upon_error | default | default |
| xdebug.start_with_request | default | default |
| xdebug.trace_enable_trigger | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.trace_enable_trigger_value | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.trace_format | 0 | 0 |
| xdebug.trace_options | 0 | 0 |
| xdebug.trace_output_dir | (setting renamed in Xdebug 3) | (setting renamed in Xdebug 3) |
| xdebug.trace_output_name | trace.%c | trace.%c |
| xdebug.trigger_value | no value | no value |
| xdebug.use_compression | 0 | 0 |
| xdebug.var_display_max_children | 128 | 128 |
| xdebug.var_display_max_data | 512 | 512 |
| xdebug.var_display_max_depth | 3 | 3 |
| XML Support | active |
| XML Namespace Support | active |
| libxml2 Version | 2.9.14 |
| XMLReader | enabled |
| XMLRPC extension version | 1.0.0RC3 |
| core library version | xmlrpc-epi v. 0.54 |
| author | Dan Libby |
| homepage | http://xmlrpc-epi.sourceforge.net |
| open sourced by | Epinions.com |
| XMLWriter | enabled |
| XSL | enabled |
| libxslt Version | 1.1.32 |
| libxslt compiled against libxml Version | 2.9.4 |
| EXSLT | enabled |
| libexslt Version | 1.1.32 |
| Opcode Caching | Up and Running |
| Optimization | Disabled |
| SHM Cache | Enabled |
| File Cache | Disabled |
| JIT | Disabled |
| Startup | OK |
| Shared memory model | mmap |
| Cache hits | 1020191 |
| Cache misses | 2788 |
| Used memory | 75298824 |
| Free memory | 58918904 |
| Wasted memory | 0 |
| Interned Strings Used memory | 6290968 |
| Interned Strings Free memory | 24 |
| Cached scripts | 2239 |
| Cached keys | 2881 |
| Max keys | 16229 |
| OOM restarts | 5 |
| Hash keys restarts | 0 |
| Manual restarts | 0 |
| Directive | Local Value | Master Value |
|---|---|---|
| opcache.blacklist_filename | no value | no value |
| opcache.consistency_checks | 0 | 0 |
| opcache.dups_fix | Off | Off |
| opcache.enable | On | On |
| opcache.enable_cli | Off | Off |
| opcache.enable_file_override | Off | Off |
| opcache.error_log | no value | no value |
| opcache.file_cache | no value | no value |
| opcache.file_cache_consistency_checks | On | On |
| opcache.file_cache_only | Off | Off |
| opcache.file_update_protection | 2 | 2 |
| opcache.force_restart_timeout | 180 | 180 |
| opcache.huge_code_pages | Off | Off |
| opcache.interned_strings_buffer | 8 | 8 |
| opcache.jit | no value | no value |
| opcache.jit_bisect_limit | 0 | 0 |
| opcache.jit_blacklist_root_trace | 16 | 16 |
| opcache.jit_blacklist_side_trace | 8 | 8 |
| opcache.jit_buffer_size | 0 | 0 |
| opcache.jit_debug | 0 | 0 |
| opcache.jit_hot_func | 127 | 127 |
| opcache.jit_hot_loop | 64 | 64 |
| opcache.jit_hot_return | 8 | 8 |
| opcache.jit_hot_side_exit | 8 | 8 |
| opcache.jit_max_exit_counters | 8192 | 8192 |
| opcache.jit_max_loop_unrolls | 8 | 8 |
| opcache.jit_max_polymorphic_calls | 2 | 2 |
| opcache.jit_max_recursive_calls | 2 | 2 |
| opcache.jit_max_recursive_returns | 2 | 2 |
| opcache.jit_max_root_traces | 1024 | 1024 |
| opcache.jit_max_side_traces | 128 | 128 |
| opcache.jit_prof_threshold | 0.005 | 0.005 |
| opcache.lockfile_path | /tmp | /tmp |
| opcache.log_verbosity_level | 1 | 1 |
| opcache.max_accelerated_files | 10000 | 10000 |
| opcache.max_file_size | 0 | 0 |
| opcache.max_wasted_percentage | 5 | 5 |
| opcache.memory_consumption | 128 | 128 |
| opcache.opt_debug_level | 0 | 0 |
| opcache.optimization_level | 0 | 0x7FFEBFFF |
| opcache.preferred_memory_model | no value | no value |
| opcache.preload | no value | no value |
| opcache.preload_user | no value | no value |
| opcache.protect_memory | Off | Off |
| opcache.record_warnings | Off | Off |
| opcache.restrict_api | no value | no value |
| opcache.revalidate_freq | 2 | 2 |
| opcache.revalidate_path | Off | Off |
| opcache.save_comments | On | On |
| opcache.use_cwd | On | On |
| opcache.validate_permission | Off | Off |
| opcache.validate_root | Off | Off |
| opcache.validate_timestamps | On | On |
| Zip | enabled |
| Zip version | 1.19.5 |
| Libzip version | 1.7.3 |
| BZIP2 compression | Yes |
| XZ compression | No |
| ZSTD compression | No |
| AES-128 encryption | Yes |
| AES-192 encryption | Yes |
| AES-256 encryption | Yes |
| ZLib Support | enabled |
|---|---|
| Stream Wrapper | compress.zlib:// |
| Stream Filter | zlib.inflate, zlib.deflate |
| Compiled Version | 1.2.11 |
| Linked Version | 1.2.11 |
| Directive | Local Value | Master Value |
|---|---|---|
| zlib.output_compression | Off | Off |
| zlib.output_compression_level | -1 | -1 |
| zlib.output_handler | no value | no value |
| Module Name |
|---|
array (1)0 => array (7)| 'name' => 'default output handler' | 'type' => 0 | 'flags' => 20592 | 'level' => 0 | 'chunk_size' => 4096 | 'buffer_size' => 159744 | 'buffer_used' => 2681
| Host | 'lupa-martin.imho.cz'
|
|---|---|
| HTTP_X_FORWARDED_PROTO | 'https'
|
| Access-Control-Allow-Origin | '*'
|
| Referrer-Policy | 'no-referrer-when-downgrade'
|
| X-Real-IP | '216.73.216.174'
|
| Connection | 'close'
|
| accept | '*/*'
|
| user-agent | 'Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)'
|
| accept-encoding | 'gzip, br, zstd, deflate'
|
| cookie | '_nss=1; tracy-session=676000cdd2; opinionsOrdering=insert_flat'
|
| X-HTTPS | '1'
|
| do | 'opinionsListing-reorder'
|
|---|---|
| opinionsListing-order | 'insert'
|
empty
| _nss | '1'
|
|---|---|
| tracy-session | '676000cdd2'
|
| opinionsOrdering | 'insert_flat'
|
| X-Powered-By | 'Nette Framework 3'
|
|---|---|
| Content-Type | 'text/html; charset=utf-8'
|
| X-Frame-Options | 'SAMEORIGIN'
|
| Set-Cookie | '_nss=1; path=/; secure; HttpOnly; SameSite=Strict'
|
| Vary | 'X-Requested-With'
|
| Set-Cookie | 'opinionsOrdering=insert; expires=Sat, 20-Dec-2025 11:56:05 GMT; Max-Age=2592000; path=/; secure; HttpOnly; SameSite=Lax'
|
| Content-Security-Policy | 'upgrade-insecure-requests'
|
Headers have been sent, output started at .../latte/app-templates-commonHeader.latte--99237deb2d.php:51 source
41: echo ' - '; 42: echo LR\Filters::escapeHtmlAttr(($this->filters->translate)('články')) /* line 3 */; 43: echo '" href="https://www.lupa.cz'; 44: echo LR\Filters::escapeHtmlAttr($this->global->uiPresenter->linkByLabel('@Rss:Articles')); 45: echo '" 46: type="application/rss+xml"> 47: <link rel="alternate" title="'; 48: echo LR\Filters::escapeHtmlAttr(($this->filters->translate)('Lupa.cz')) /* line 5 */; 49: echo ' - '; 50: echo LR\Filters::escapeHtmlAttr(($this->filters->translate)('aktuality')) /* line 5 */; 51: echo '" 52: href="https://www.lupa.cz'; 53: echo LR\Filters::escapeHtmlAttr($this->global->uiPresenter->linkByLabel('@Rss:Actualities:Actualities')); 54: echo '" type="application/rss+xml"> 55: <link rel="alternate" title="';