Byly zveřejněny informace o kritické zranitelnosti CVE-2026-64600 pojmenované RefluXFS (technické detaily) v XFS. Je tam již od verze Linuxu 4.11, tj. rok 2017. Jedná se o lokální eskalaci práv. Neprivilegovaný uživatel může editovat libovolný soubor, například klidně zrušit rootovské heslo v /etc/passwd. Videoukázka na Vimeo. V upstreamu je zranitelnost opravena.
OpenAI / ChatGPT má dnes výpadky (OpenAI Status, DownDetector).
Poskytovatel hostingu svobodných/open-source projektů Codeberg po hlasování na valné hromadě vydal stanovisko k využívání LLM. Kvůli vytěžování infrastruktury a rostoucím cenám hardwaru, ale také hrozbám pro spolupráci v komunitě se k LLM staví kriticky. Nebude poskytovat hosting projektů vytvářených LLM agenty.
Jack Dorsey představil (𝕏) open source týmovou komunikační platformu Buzz (GitHub) s cílem snížit závislost na Slacku a GitHubu.
Poštovní klient Thunderbird byl vydán v nové verzi 153 s kódovým názvem Meadow. Jedná se o ESR (Extended Support Release) vydání. Přehled novinek v poznámkách k vydání. Vylepšuje OAuth. Thundermail lze používat bez instalace doplňku.
AI tento rok naplno vtrhla do vývoje softwaru a výrazně ovlivňuje také open source projekty. Jiří Eischmann v příspěvku Jak mění AI open source na svém blogu rozebírá několik trendů, které v open source v poslední době v souvislosti s AI pozoruje, a jak tyto trendy svět otevřeného softwaru mění (Inflace projektů, Zahlcení kontroly, Klesající motivace zveřejňovat kód).
Evropská komise (EK) vyměřila americké internetové společnosti Google pokutu 890 milionů eur (21,5 miliardy Kč) za porušení unijního nařízení o digitálních trzích (DMA). Firma se podle unijní exekutivy provinila tím, že ve vyhledávači Google Search upřednostňovala vlastní služby a že podnikům ukládala omezení, která jim bránila nasměrovat spotřebitele k alternativním, často levnějším nákupním kanálům na platformě Google Play.
… více »Samsung na akci Galaxy Unpacked July 2026 (YouTube) představil své nové telefony Galaxy Z Fold8 Ultra, Fold8 a Flip8, hodinky Galaxy Watch Ultra2 a Watch9 a chytré brýle ve spolupráci s Gentle Monster a Warby Parker.
Po pěti letech vývoje vyšla česká počítačová hra Scarlet Deer Inn (ProtonDB). Scarlet Deer Inn je vyšívaná temná středověká pohádka. Zatímco život ve zdánlivě obyčejné vesnici se točí kolem běžných povinností a sousedských drbů, v podzemí se skrývají zlověstná tajemství.
Představen byl Raspberry Pi Touch Display 2 s uhlopříčkou 10 palců a rozlišením 1200 × 1920 pixelů. Cena je 80 dolarů.
Používám Tomcat 7.0.29 (ze ZIPu z webu Apache Tomcat), Oracle Linux 6.4 a rád bych deployoval aplikaci myapp s ROOT kontextem s využitím virtualhosta.
Nastavení jsem se snažil provést podle následující dokumentace Tomcatu:
http://tomcat.apache.org/tomcat-7.0-doc/config/context.html#Naminghttp://tomcat.apache.org/tomcat-7.0-doc/config/context.html#Defining_a_contextIf you want to deploy a WAR file or a directory using a context path that is not related to the base file name then one of the following options must be used to prevent double-deployment:
a) Disable autoDeploy and deployOnStartup and define all Contexts in server.xml
b) Locate the WAR and/or directory outside of the Host's appBase and use a context.xml file with a docBase attribute to define it.
Individual Context elements may be explicitly defined:
A. In an individual file at/META-INF/context.xmlinside the application files. Optionally (based on the Host'scopyXMLattribute) this may be copied to$CATALINA_BASE/conf/[enginename]/[hostname]/and renamed to application's base file name plus a ".xml" extension.
B. In individual files (with a ".xml" extension) in the$CATALINA_BASE/conf/[enginename]/[hostname]/directory. The context path and version will be derived from the base name of the file (the file name less the .xml extension). This file will always take precedence over any context.xml file packaged in the web application'sMETA-INFdirectory.
C. Inside a Host element in the mainconf/server.xml.
Požadavky na deployment myapp
context path=""myapp.war (ne ROOT.war)META-INF/context.xml
Abych toto dosáhl, provedl jsem následující
myapphostname s appbasedir $CATALINA_HOME/myapp_dstmyapp.war do složky $CATALINA_HOME/myapp_src (splnění požadavku b)$CATALINA_HOME/conf/Catalina/myapphost/ROOT.xml obsahující context path="" docBase=$CATALINA_HOME/myapp_src/myapp.war (splnění požadavku B)
Předpokládal jsem, že se myapp.war rozbalí do appBase virtualhosta,t.j. do $CATALINA_HOME/myapp_dst nebo do $CATALINA_HOME/myapp_dst/ROOT, ale nestalo se ani jedno. Aplikace myapp beží z nerozbaleného WARu.
Co bych měl změnit v konfiguraci nebo v souborové struktuře, abych dosáhl požadovaného chování?
Předem díky za rady.
Leoš
=== adresářová struktura - relevantní soubory/složky ===$CATALINA_BASE |-- bin |-- conf | |-- Catalina | | |-- localhost | | `-- myapphost | | `-- ROOT.xml | |-- catalina.policy | |-- catalina.properties | |-- context.xml | |-- logging.properties | |-- server.xml | |-- tomcat-users.xml | `-- web.xml |-- lib |-- LICENSE |-- logs |-- NOTICE |-- myapp_dst | |-- mysecondapp | `-- mysecondapp.war |-- myapp_src | `-- myapp.war |-- RELEASE-NOTES |-- temp |-- webapps `-- work=== server.xml - relevantní část ===
<Engine name="Catalina" defaultHost="myapphost">
<Realm className="org.apache.catalina.realm.LockOutRealm">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
</Realm>
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt"
pattern="%h %l %u %t "%r" %s %b" />
</Host>
<Host name="myapphost" appBase="myapp_dst" unpackWARs="true" autoDeploy="true">
</Host>
</Engine>
=== $CATALINA_HOME/conf/Catalina/myapphost/ROOT.xml ===
<Context path="" docBase="/opt/programs/tomcat7b/myapp_src/myapp.war" />
Řešení dotazu:
Děkuji. Ano, je to tak, mimo appBase Tomcat WARy nerozbaluje. Šlo mi o to nastavit <Context path=""/>, rozbalit WAR a zároveň se vyhnout vytvoření složky ROOT.war. Rád bych, aby Tomcat rozbalil WAR pouze do složky myapp, což však nejspíš koliduje s dokumentací, která vyžaduje pro prázdný stríng v Context path složku ROOT nebo soubor ROOT.war.
Rozbalení WAR je požadavek zákazníka, pro kterého nastavení provádím. Panuje obava, že aplikace běžící z nerozbaleného WARu bude běžet pomaleji než z rozbaleného.
docBase, Tomcat WARko nemůže rozbalit, protože vůbec nic neví o cíli – např. jestli je tam povolen zápis. Takže pokud chcete použít automatické rozbalování, musíte WARko nahrát do appBase. ContextPath je pak možné určit buď názvem WARka nebo souborem context.xml ve WARku. Nebo můžete WARko rozbalit předem a docBase nasměrovat na rozbalený adresář. Nebo použít Jetty, které WARka rozbaluje do systémového dočasného adresáře. A nebo se vykašlat na rozbalování, to, že by aplikace běžela pomaleji, je podle mne nesmysl. Týkalo by se to nanejvýš statických souborů, a ty lze stejně nejrychleji odeslat jedině přes NIO, takže je nutné celý mechanismus servletů obejít (Jetty to umí, nevím, zda i Tomcat – ale rozhodně to znamená mnohem víc konfigurace, než jenom někam nahrát WAR).
Děkuji za upřesnění. Díky Vám jsem si ujasnil, že zmíněné požadavky na deploy se nedají splnit současně a to protože se Tomcat chová takto:
<Context path="string"> se jménem WAR nebo rozbalené složky, kdy prázdný string vyžaduje pojmenování ROOT.war, resp. ROOT/ (složka), což dokumentace Tomcatu popisuje zde.appBase do nějakého docBase, kde ovšem ztrácím možnost rozbalení WAR, protože je docBase pro Tomcat neviditelná.
Ještě jednou díky za Vaše postřehy. Řešením v mém případě bude nejspíše nerozbalovat WAR.
Tiskni
Sdílej: