Výzkumníci ukazují, jak mohou otevřené tunely a IPv6 Extension Headers synchronizovat pakety do krátkých provozních špiček. V kontrolovaném experimentu naměřili přes 180násobnou koncentraci paketového toku vůči průměrné rychlosti odesílání — nikoli 180násobné zvětšení objemu dat. Článek obsahuje metodiku, limity měření i mitigace pro GRE, IPIP a další tunely.
Po velkém úspěchu prvního MobileLinux Hackdaye se vracíme do Českých Budějovic s druhým ročníkem. V pátek 30. října 2026 od 10:00 se v prostorách Jihočeské univerzity uskuteční Embedded & MobileLinux Hackday #2. Těšit se můžete na témata jako Immutable Linux na telefonech (BengalOS), U-Boot a upstream vývoj, AI optimalizace pro embedded systémy nebo otevřený hardware. Nebude chybět praktické hackování, sdílení zkušeností a možnost … více »
Dne 21. října 2026 vydal projekt Node.js bezpečnostní aktualizace opravující deset zranitelností, včetně jedné umožňující potenciální vzdálené spuštění kódu (RCE). Nejzajímavější je CVE-2026-111497, chyba dekodéru Brotli, kterou objevili výzkumníci využívající OpenAI Codex Security. Chyba je v nativním dekodéru Brotli, nikoli v samotném JavaScriptu. Speciálně vytvořený komprimovaný vstup způsobí, že dekodér zamění
… více »Francouzský výrobce kabelů Nexans upozornil na napjaté dodávky elektrických kabelů. Výstavba nové výrobní linky pro některé typy kabelů může trvat přibližně tři roky. Datacentra potřebují rozsáhlé nízkonapěťové a středněnapěťové rozvody. Poptávka roste současně s modernizací elektrických sítí. Někteří odběratelé proto uzavírají výrazně delší dodavatelské smlouvy [Reuters].
Představena byla (𝕏) virtuální platforma FLYBENCH FPV, která nováčky provede zapojením a konstrukcí dronů.
Google Chrome 156 byl prohlášen za stabilní. Přehled novinek v poznámkách k vydání. Opraveno bylo 353 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
Indická společnost eMudhra po bezpečnostním incidentu, tj. kompromitaci soukromých klíčů osmi mezilehlých certifikátů své certifikační autority, opouští globální byznys s SSL/TLS certifikáty.
Dle Phoronixu zveřejnila společnost Trend Micro prostřednictvím programu Zero Day Initiative (ZDI) několik hlášení bezpečnostních zranitelností přímo na veřejném mailing listu LKML, přestože některé chyby dosud nemají opravu začleněnou do hlavní větve jádra. Mezi hlášenými problémy jsou dvě zranitelnosti s hodnocením CVSS 9.0, týkající se SMB Direct a KSMBD, které mohou umožnit vzdálené spuštění kódu. Další hlášení se týkají … více »
Správce hesel KeePassXC byl vydán ve verzi 2.8.0. Přechází na Qt 6, podporuje vkládání hesel s Waylandem, rychlé odemykání pomocí Polkitu nebo možnost nastavení klávesových zkratek (seznam změn).
Databáze DuckDB (Wikipedie) byla vydána ve verzi 2.0.0 LTS. S kódovým názvem Cinnamon Teal (čírka skořicová). S vyladěným protokolem Quack.
Už delší dobu se věnuji použití Pythonu na webu. Nedávno mě kamarád přivedl na nápad zkusit kromě mod_pythonu či obyčejného CGI také relativně odlehčený framework jménem CherryPy. Z pythoních frameworků jsem zkoušel zatím jen Django, které je velice slušné, ale já si přecejen ten základ aplikace píšu sám. Django toho za mě dělá až moc. Podobně je na tom TurboGears, který je mi ale sympatičtější, protože vychází právě z CherryPy a templating enginu Kid (ten se dobře s CherryPy používá i tak).
Způsobů jak použít CherryPy je více. Můžete buď použít vestavěný server (port 8080, ale nic vám nebrání při absenci Apache to hodit na 80), FastCGI nebo třeba právě můj oblíbený mod_python. Oficiální návod na tuto kombinaci neexistuje, pouze je na webu wikioidní databáze "receptů", mezi nimiž takový návod je.
Brzy jsem však zjistil, že ten návod prakticky vůbec nefunguje (mj. také kvůli současné situaci, kdy se pomalu klube verze 3.0.0 a hodně věcí se mění) a tak jsem se jal o tom diskutovat v cherrypy-users na Google Groups. No a dneska bych vám rád trochu konsolidovaně předložil, co jsme spolu s původním autorem onoho návodu dali dohromady — tedy funkční návod na zprovoznění nejaktuálnější verze CherryPy (3.0.0b2) přes Apache & mod_python.
Nejdřív pro pořádek uvedu, na čem to všechno kutím: Apache/2.0.55 (Ubuntu) mod_python/3.1.4 Python/2.4.3.
Jak nainstalovat výše uvedený SW, to snad nemusím vysvětlovat. Předpokládám, že každý uživatel Linuxu ví, jak se v jeho distru pracuje s balíčkovacím systémem a že člověk zajímající se o Python na webu tak nějak ví jak to s Apachem chodí.
Instalace CherryPy je jedoduchá. Stáhneme poslední verzi a nainstalujeme pomocí
sudo python setup.py installPak využijeme vymožeností open-source a CherryPy si spravíme. V
__init__.py v adresáři cherrypy chybí from cherrypy import _cprequestDále potřebujeme skript modpython_gateway.py, který je v nové verzi CherryPy již nahrazen nativním modulem, ten ale ještě jaksi nefunguje jak má. Stažený skript nakopírujeme někam do PYTHONPATH.
/var/www) vytoříme adresář myapp. V něm vytvoříme webařům snad známý soubor .htaccess a vložíme do něj toto:
PythonPath "['/var/www/myapp']+sys.path" SetHandler python-program PythonHandler modpython_gateway::handler PythonOption wsgi.startup app::startapp PythonOption wsgi.application cherrypy::tree PythonOption wsgi.cleanup cherrypy::engine.stopVěc se dá zařídit i přímo přes
apache2.conf, kam se stejné řádky vloží do tagu <Location /myapp> </Location>.app.py a to s tímto obsahem:
import cherrypy
class HelloWorld:
def index(self):
return "Hello world!"
index.exposed = True
def page(self):
return "Some page..."
page.exposed = True
def startapp(req):
cherrypy.tree.mount(HelloWorld(), "/myapp")
cherrypy.config.update({"environment": "production"})
cherrypy.engine.start(blocking=False)
Ze souboru je dobře vidět, jaká je filosofie stavby CherryPy aplikace. Třída je "adresářovou úrovní", její metody jednotlivými "stránkami" (berte ty uvozovky opravdu vážně). Nesmírně praktická je pak možnost definovat proměnné a další věci v konstruktoru a používat je v jakékoliv metodě té třídy. No a když se pak tyhle věci skoubí s dědičností tříd a podobnými věcmi... Ve startovací funkci se na strom aplikace jednoduše namountuje co a hlavně kam chceme. Abychom náš projekt našli na http://localhost/myapp, naroubujeme třídu HelloWorld na větev /myapp. IMHO perfektní filosofie tvorby webu.
No, a teď bychom měli vidět "Hello World!" na http://localhost/myapp (resp. http://localhost/myapp/index) a text "Some page..." na http://localhost/myapp/page.
Tenhle blogpost rozhodně nemá za cíl podávat vyčerpávající informace o uvedeném frameworku a nějak do hloubky rozebírat jeho princip, to je asi zřejmé. Jen ventiluju svoji radost z toho, že se konečně něco pohlo
Zájemcům doporučuju prošmejdit web CherryPy a uvedenou Google grupu.
Tiskni
Sdílej:
mozem sa este opytat ake mate skusenosti s mod_python? ja som bezal povodne na nom, ale mal som problemy s kesovanim skriptov.No, tak nevim, jestli ted mluvime oba o tom samem, ale ja mel (a obcas i mam) takove problemy taky. Mod_python mi neznamo proc casto nereloaduje moduly a to i kdyz mam explicitne nastaveno
PythonAutoReload On
Ale to je problem jen pri vyvoji.
Jinak s nim mam zksuenosti dobre, zvlaste s tim vestavenym templatovacim systemem. Na opravdu male weby je cisty mod_python spickova vec. I ten jeho CGIHandler je 15x rychlejsi nez ciste CGI
Ta rychlost myslim, ze bude jedna z nespornych vyhod mod_pythonu oproti mod_rewrite. To mi precijen pripadne jako takove "spinave" reseni
...ale ten je mi zrovna nejsympatictejsi.
U cherrypy ale prakticky vubec, je to lepsi. Dokonce pouzivani KID templatu s povolenym kid.enable_import() je spolehlivejsi nez normalne ty soubory natahovat, hazi to mene chyb (neznamo proc mi to pri beznem natahovani obcas napise, ze tam ten soubor neni, nekdy je to OK). Stejne je to pres ten import elegantnejsi
vo verzii 3.3 to ma uz byt odstranene...Jeee, to bych byl stastny jako blecha!
Jedina opravdova vada mod_pythonu...
Nedostal jsem se zatím k tomu, abych naimplementoval podporu pro jiné databázové datové typy, což už asi bude horší.Mozna, ze lepe by to slo v TurboGears, kterej pouziva SQLObject, ne? btw: podle tohoto postu pod kapotou Djanga taky tluce CherryPy
Jednoduchý, a ne..re se do cesty, když mám představu, jak něco napsat.